welcome ipfs

This commit is contained in:
Yann Autissier
2022-06-30 23:37:10 +02:00
parent b149a01b75
commit e06266489c
66 changed files with 871 additions and 591 deletions
+10 -2
View File
@@ -1,3 +1,11 @@
# target user: Fire ssh-add
User ?= User/User
# target user: Fire user-agent
.PHONY: User user
User user: bootstrap-docker docker-network-create $(if $(DOCKER_RUN),stack-User-up) ssh-add
User user: bootstrap-docker bootstrap-user $(if $(DOCKER_RUN),stack-User-up) user-agent
# target user-agent: Fire ssh-add
user-agent: ssh-add
# target User-% user-%; Fire target stack-User-%
User-% user-%: stack-User-%;
+6
View File
@@ -0,0 +1,6 @@
MYOS_RC_PROMPT_SET=true
MYOS_RC_PS1_SET=true
MYOS_RC_SCREEN_ATTACH=false
MYOS_RC_SOURCE=/etc/profile.d/rc_functions.sh
MYOS_RC_SSH_ADD=false
MYOS_RC_TMUX_ATTACH=false
+21 -27
View File
@@ -1,13 +1,14 @@
version: '3.6'
services:
cli:
myos:
build:
args:
- DOCKER_BUILD_DIR=docker/cli
- DOCKER_BUILD_DIR=docker/myos
- GID=${GID}
- GIT_AUTHOR_NAME=${GIT_AUTHOR_NAME}
- GIT_AUTHOR_EMAIL=${GIT_AUTHOR_EMAIL}
- IPFS_VERSION=0.13.0
- UID=${UID}
- USER=${USER}
- SSH_BASTION_HOSTNAME=${SSH_BASTION_HOSTNAME}
@@ -15,40 +16,33 @@ services:
- SSH_PUBLIC_HOSTS=${SSH_PUBLIC_HOSTS}
- SSH_PRIVATE_IP_RANGE=${SSH_PRIVATE_IP_RANGE}
context: ../..
dockerfile: docker/cli/Dockerfile
command: tail -f /dev/null
container_name: ${DOCKER_NAME_CLI}
depends_on:
- ssh
dockerfile: docker/myos/Dockerfile
container_name: ${DOCKER_NAME}
environment:
- SSH_AUTH_SOCK=/tmp/ssh-agent/socket
image: ${DOCKER_IMAGE_CLI}:${DOCKER_IMAGE_TAG}
- ENV=${ENV}
- RC_00_SOURCE=${MYOS_RC_SOURCE}
- RC_01_PS1_SET=${MYOS_RC_PS1_SET}
- RC_02_PROMPT_SET=${MYOS_RC_PROMPT_SET}
- RC_03_SSH_ADD=${MYOS_RC_SSH_ADD}
- RC_04_TMUX_ATTACH=${MYOS_RC_TMUX_ATTACH}
- RC_05_SCREEN_ATTACH=${MYOS_RC_SCREEN_ATTACH}
- SHELL=${DOCKER_SHELL}
image: ${DOCKER_IMAGE}:${DOCKER_IMAGE_TAG}
networks:
- private
restart: always
user: ${UID}:${GID}
volumes:
- ssh:/tmp/ssh-agent:ro
# - ${HOME}:${HOME}:cached
- ${MONOREPO_DIR}:${MONOREPO_DIR}:cached
- myos:/tmp/ssh-agent
# - /var/run/docker.sock:/var/run/docker.sock
working_dir: ${MONOREPO_DIR}
ssh:
build:
args:
- DOCKER_BUILD_DIR=docker/ssh
- GID=${GID}
- UID=${UID}
- USER=${USER}
context: ../..
dockerfile: docker/ssh/Dockerfile
container_name: ${DOCKER_NAME_SSH}
image: ${DOCKER_IMAGE_SSH}:${DOCKER_IMAGE_TAG}
networks:
- private
restart: always
volumes:
- ssh:/tmp/ssh-agent
volumes:
ssh:
myos:
external: true
name: ${DOCKER_VOLUME}
networks:
private:
+1
View File
@@ -0,0 +1 @@
IPFS_SERVICE_8080_TAGS_USER=urlprefix-ipfs.${USER}.${DOMAIN}/
+56
View File
@@ -0,0 +1,56 @@
version: '3.6'
services:
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- IPFS_VERSION=0.13.0
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --migrate=true
container_name: ${COMPOSE_PROJECT_NAME_USER}_ipfs
cpus: 0.5
environment:
- IPFS_PROFILE=${IPFS_PROFILE}
image: ${DOCKER_REPOSITORY_USER}/ipfs:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${COMPOSE_SERVICE_NAME_USER}-ipfs:4001
- SERVICE_5001_CHECK_TCP=true
- SERVICE_5001_NAME=${COMPOSE_SERVICE_NAME_USER}-ipfs:5001
- SERVICE_8080_CHECK_HTTP=/ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME_USER}-ipfs:8080
- SERVICE_8080_TAGS=${IPFS_SERVICE_8080_TAGS_USER}
- SERVICE_8081_IGNORE=true
networks:
- private
- public
ports:
- 4001
- 5001/tcp
- 8080/tcp
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- ipfs:/data/ipfs:delegated
restart: always
volumes:
ipfs:
driver: local
driver_opts:
type: none
device: ${HOME}/.ipfs
o: bind
name: ${COMPOSE_PROJECT_NAME_USER}_ipfs
networks:
private:
external: true
name: ${DOCKER_NETWORK_PRIVATE}
public:
external: true
name: ${DOCKER_NETWORK_PUBLIC}
+1
View File
@@ -0,0 +1 @@
IPFS_SERVICE_8080_TAGS=urlprefix-ipfs.${APP_DOMAIN}/
+45
View File
@@ -0,0 +1,45 @@
version: '3.6'
services:
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- IPFS_VERSION=0.13.0
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --migrate=true
cpus: 0.5
environment:
- IPFS_PROFILE=${IPFS_PROFILE}
image: ${DOCKER_REPOSITORY}/ipfs:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${COMPOSE_SERVICE_NAME}-ipfs:4001
- SERVICE_5001_CHECK_TCP=true
- SERVICE_5001_NAME=${COMPOSE_SERVICE_NAME}-ipfs:5001
- SERVICE_8080_CHECK_HTTP=/ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME}-ipfs:8080
- SERVICE_8080_TAGS=${IPFS_SERVICE_8080_TAGS}
- SERVICE_8081_IGNORE=true
networks:
- private
ports:
- 4001
- 5001/tcp
- 8080/tcp
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- ipfs:/data/ipfs:delegated
restart: always
volumes:
ipfs:
networks:
private:
external: true
name: ${DOCKER_NETWORK_PRIVATE}
+1 -1
View File
@@ -1,6 +1,6 @@
logs ?= sematext/logagent
# target app-build-logagent: Exec 'rm -Rf /root/.npm /log-buufer/*' in docker SERVICE
# target app-build-logagent: Exec 'rm -Rf /root/.npm /log-buffer/*' in docker SERVICE
.PHONY: app-build-logagent
app-build-logagent:
$(call make,docker-compose-exec ARGS='rm -Rf /root/.npm /log-buffer/*' SERVICE=logagent)
+20 -4
View File
@@ -1,7 +1,23 @@
ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET IPFS_PROFILE
IPFS_PROFILE ?= $(if $(filter-out amd64 x86_64,$(PROCESSOR_ARCHITECTURE)),lowpower,server)
node ?= node/node node/ipfs
ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET4 DOCKER_INTERNAL_DOCKER_HOST IPFS_PROFILE
IPFS_PROFILE ?= $(if $(filter-out amd64 x86_64,$(PROCESSOR_ARCHITECTURE)),lowpower,server)
# target node: Fire docker-network-create-% for DOCKER_NETWORK_PUBLIC node-ssl-certs stack-node-up
.PHONY: node
node: bootstrap-docker docker-network-create-$(DOCKER_NETWORK_PUBLIC) node-ssl-certs stack-node-up
node: bootstrap-docker bootstrap-host stack-node-up
# target node-%; Fire target stack-node-%
node-%: stack-node-%;
# target node-ssl-certs: Create ${DOMAIN}.key.pem and ${DOMAIN}.crt.pem files
.PHONY: node-ssl-certs
node-ssl-certs:
docker run --rm --mount source=$(COMPOSE_PROJECT_NAME_NODE)_ssl-certs,target=/certs alpine [ -f /certs/$(DOMAIN).crt.pem -a -f /certs/$(DOMAIN).key.pem ] \
|| $(RUN) docker run --rm -e DOMAIN=$(DOMAIN) --mount source=$(COMPOSE_PROJECT_NAME_NODE)_ssl-certs,target=/certs alpine sh -c "\
apk --no-cache add openssl \
&& { [ -f /certs/${DOMAIN}.key.pem ] || openssl genrsa -out /certs/${DOMAIN}.key.pem 2048; } \
&& openssl req -key /certs/${DOMAIN}.key.pem -out /certs/${DOMAIN}.crt.pem \
-addext extendedKeyUsage=serverAuth \
-addext subjectAltName=DNS:${DOMAIN} \
-subj \"/C=/ST=/L=/O=/CN=${DOMAIN}\" \
-x509 -days 365"
+3 -4
View File
@@ -1,8 +1,7 @@
CONSUL_ACL_TOKENS_MASTER=01234567-89AB-CDEF-0123-456789ABCDEF
CONSUL_CONSUL_HTTP_TOKEN=01234567-89AB-CDEF-0123-456789ABCDEF
CONSUL_SERVICE_8500_TAGS=urlprefix-consul.${APP_DOMAIN}/
CONSUL_SERVICE_8500_TAGS=urlprefix-consul.${DOMAIN}/
FABIO_CONSUL_HTTP_TOKEN=01234567-89AB-CDEF-0123-456789ABCDEF
FABIO_SERVICE_9998_TAGS=urlprefix-fabio.${APP_DOMAIN}/
IPFS_SERVICE_8080_TAGS=urlprefix-ipfs.${APP_DOMAIN}/
PORTAINER_SERVICE_9000_TAGS=urlprefix-portainer.${APP_DOMAIN}/
FABIO_SERVICE_9998_TAGS=urlprefix-fabio.${DOMAIN}/
PORTAINER_SERVICE_9000_TAGS=urlprefix-portainer.${DOMAIN}/
REGISTRATOR_CONSUL_HTTP_TOKEN=01234567-89AB-CDEF-0123-456789ABCDEF
+2 -2
View File
@@ -1,2 +1,2 @@
CADVISOR_EXPORTER_SERVICE_8080_TAGS=urlprefix-cadvisor-exporter.${APP_DOMAIN}/
NODE_EXPORTER_SERVICE_9100_TAGS=urlprefix-node-exporter.${APP_DOMAIN}/
CADVISOR_EXPORTER_SERVICE_8080_TAGS=urlprefix-cadvisor-exporter.${DOMAIN}/
NODE_EXPORTER_SERVICE_9100_TAGS=urlprefix-node-exporter.${DOMAIN}/
+6 -4
View File
@@ -2,11 +2,12 @@ version: '3.6'
services:
cadvisor-exporter:
image: google/cadvisor:latest
container_name: ${COMPOSE_PROJECT_NAME_NODE}_cadvisor-exporter
hostname: ${HOSTNAME}
image: google/cadvisor:latest
labels:
- SERVICE_8080_CHECK_TCP=true
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME}-cadvisor-exporter:8080
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME_NODE}-cadvisor-exporter:8080
- SERVICE_8080_TAGS=${CADVISOR_SERVICE_EXPORTER_8080_TAGS}
- SERVICE_9200_IGNORE=true
networks:
@@ -25,11 +26,12 @@ services:
- "^/(sys|proc|dev|host|etc|rootfs/var/lib/docker/containers|rootfs/var/lib/docker/overlay2|rootfs/run/docker/netns|rootfs/var/lib/docker/aufs)($$|/)"
- '--path.procfs=/host/proc'
- '--path.sysfs=/host/sys'
image: prom/node-exporter:latest
container_name: ${COMPOSE_PROJECT_NAME_NODE}_node-exporter
hostname: ${HOSTNAME}
image: prom/node-exporter:latest
labels:
- SERVICE_9100_CHECK_TCP=true
- SERVICE_9100_NAME=${COMPOSE_SERVICE_NAME}-node-exporter:9100
- SERVICE_9100_NAME=${COMPOSE_SERVICE_NAME_NODE}-node-exporter:9100
- SERVICE_9100_TAGS=${SERVICE_NODE_EXPORTER_HTTP_TAGS}
networks:
- public
+1
View File
@@ -0,0 +1 @@
IPFS_SERVICE_8080_TAGS_NODE=urlprefix-ipfs.${DOMAIN}/
+53
View File
@@ -0,0 +1,53 @@
version: '3.6'
services:
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- IPFS_VERSION=0.13.0
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --migrate=true
container_name: ${COMPOSE_PROJECT_NAME_NODE}_ipfs
cap_add:
- SYS_ADMIN # --mount
cpus: 0.5
devices:
- /dev/fuse:/dev/fuse # --mount
environment:
- IPFS_PROFILE=${IPFS_PROFILE}
image: ${DOCKER_REPOSITORY_NODE}/ipfs:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${COMPOSE_SERVICE_NAME_NODE}-ipfs:4001
- SERVICE_5001_CHECK_TCP=true
- SERVICE_5001_NAME=${COMPOSE_SERVICE_NAME_NODE}-ipfs:5001
- SERVICE_8080_CHECK_HTTP=/ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME_NODE}-ipfs:8080
- SERVICE_8080_TAGS=${IPFS_SERVICE_8080_TAGS_NODE}
- SERVICE_8081_IGNORE=true
networks:
- public
ports:
- 4001:4001
- 5001/tcp
- 8080/tcp
security_opt:
- apparmor:unconfined # --mount
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- ipfs:/data/ipfs:delegated
restart: always
volumes:
ipfs:
name: ${COMPOSE_PROJECT_NAME_NODE}_ipfs
networks:
public:
external: true
name: ${DOCKER_NETWORK_PUBLIC}
+17 -51
View File
@@ -8,6 +8,7 @@ services:
- DOCKER_BUILD_DIR=docker/consul
context: ../..
dockerfile: docker/consul/Dockerfile
container_name: ${COMPOSE_PROJECT_NAME_NODE}_consul
image: ${DOCKER_REPOSITORY_NODE}/consul:${DOCKER_IMAGE_TAG}
environment:
CONSUL_BIND_INTERFACE: '${DOCKER_HOST_IFACE}'
@@ -30,16 +31,16 @@ services:
- SERVICE_8301_IGNORE=true
- SERVICE_8302_IGNORE=true
- SERVICE_8500_CHECK_HTTP=/v1/health/service/consul
- SERVICE_8500_NAME=${COMPOSE_SERVICE_NAME}-consul:8500
- SERVICE_8500_NAME=${COMPOSE_SERVICE_NAME_NODE}-consul:8500
- SERVICE_8500_TAGS=${CONSUL_SERVICE_8500_TAGS}
- SERVICE_8600_IGNORE=true
- SERVICE_ADDRESS=${DOCKER_HOST_INET}
- SERVICE_CHECK_SCRIPT=docker-healthcheck ${DOCKER_HOST_INET}
- SERVICE_ADDRESS=${DOCKER_HOST_INET4}
- SERVICE_CHECK_SCRIPT=docker-healthcheck ${DOCKER_HOST_INET4}
network_mode: host
restart: always
volumes:
- consul:/consul/data
- ssl-certs:/certs
- consul:/consul/data:delegated
- ssl-certs:/certs:ro
- /var/run/docker.sock:/var/run/docker.sock
fabio:
build:
@@ -50,20 +51,21 @@ services:
- PROCESSOR_ARCHITECTURE=${PROCESSOR_ARCHITECTURE}
context: ../..
dockerfile: docker/fabio/Dockerfile
container_name: ${COMPOSE_PROJECT_NAME_NODE}_fabio
image: ${DOCKER_REPOSITORY_NODE}/fabio:${DOCKER_IMAGE_TAG}
command: -registry.backend "consul" -registry.consul.addr "consul:8500" -registry.consul.token "$FABIO_CONSUL_HTTP_TOKEN" -proxy.addr ":80,:443;cs=local" -proxy.cs "cs=local;type=file;cert=/certs/${DOMAIN}.crt.pem;key=/certs/${DOMAIN}.key.pem"
depends_on:
- consul
extra_hosts:
- consul:${DOCKER_HOST_INET}
- consul:${DOCKER_INTERNAL_DOCKER_HOST}
hostname: ${HOSTNAME}
labels:
- SERVICE_80_CHECK_TCP=true
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME}-fabio:80
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME_NODE}-fabio:80
- SERVICE_443_CHECK_TCP=true
- SERVICE_443_NAME=${COMPOSE_SERVICE_NAME}-fabio:443
- SERVICE_443_NAME=${COMPOSE_SERVICE_NAME_NODE}-fabio:443
- SERVICE_9998_CHECK_HTTP=/routes
- SERVICE_9998_NAME=${COMPOSE_SERVICE_NAME}-fabio:9998
- SERVICE_9998_NAME=${COMPOSE_SERVICE_NAME_NODE}-fabio:9998
- SERVICE_9998_TAGS=${FABIO_SERVICE_9998_TAGS}
- SERVICE_9999_IGNORE=true
ports:
@@ -74,46 +76,7 @@ services:
- public
restart: always
volumes:
- ssl-certs:/certs
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- IPFS_VERSION=0.13.0
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --migrate=true --mount
cap_add:
- SYS_ADMIN
devices:
- /dev/fuse:/dev/fuse
environment:
- IPFS_PROFILE=${IPFS_PROFILE}
image: ${DOCKER_REPOSITORY_NODE}/ipfs:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${COMPOSE_SERVICE_NAME}-ipfs:4001
- SERVICE_5001_CHECK_TCP=true
- SERVICE_5001_NAME=${COMPOSE_SERVICE_NAME}-ipfs:5001
- SERVICE_8080_CHECK_HTTP=/ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME}-ipfs:8080
- SERVICE_8080_TAGS=${IPFS_SERVICE_8080_TAGS}
- SERVICE_8081_IGNORE=true
networks:
- public
ports:
- 4001:4001
- 5001/tcp
- 8080/tcp
security_opt:
- apparmor:unconfined
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- ipfs:/data/ipfs
restart: always
- ssl-certs:/certs:ro
registrator:
build:
args:
@@ -122,6 +85,7 @@ services:
- GIT_AUTHOR_EMAIL=${GIT_AUTHOR_EMAIL}
context: ../..
dockerfile: docker/registrator/Dockerfile
container_name: ${COMPOSE_PROJECT_NAME_NODE}_registrator
image: ${DOCKER_REPOSITORY_NODE}/registrator:${DOCKER_IMAGE_TAG}
command: -internal -cleanup -deregister always -resync=30 -useIpFromNetwork "${DOCKER_NETWORK_PUBLIC}" -useIpFromLabel SERVICE_ADDRESS consul://consul:8500
depends_on:
@@ -129,7 +93,7 @@ services:
environment:
- CONSUL_HTTP_TOKEN=${REGISTRATOR_CONSUL_HTTP_TOKEN}
extra_hosts:
- consul:${DOCKER_HOST_INET}
- consul:${DOCKER_INTERNAL_DOCKER_HOST}
hostname: ${HOSTNAME}
network_mode: host
restart: always
@@ -138,8 +102,10 @@ services:
volumes:
consul:
ipfs:
name: ${COMPOSE_PROJECT_NAME_NODE}_consul
ssl-certs:
external: true
name: ${COMPOSE_PROJECT_NAME_NODE}_ssl-certs
networks:
public:
+3 -2
View File
@@ -5,10 +5,11 @@ services:
build:
args:
- DOCKER_BUILD_DIR=docker/pdns-server
context: ../../..
context: ../..
dockerfile: docker/pdns-server/Dockerfile
command: /usr/local/sbin/pdns_recursor --local-address='192.168.0.1:53' --allow-from='127.0.0.0/8, 192.168.1.0/24, 172.16.0.0/12'
image: ${DOCKER_REPOSITORY}/pdns-recursor:${DOCKER_IMAGE_TAG}
container_name: ${COMPOSE_PROJECT_NAME_NODE}_pdns-recursor
hostname: ${HOSTNAME}
image: ${DOCKER_REPOSITORY_NODE}/pdns-recursor:${DOCKER_IMAGE_TAG}
network_mode: host
restart: always
+6 -5
View File
@@ -5,10 +5,11 @@ services:
build:
args:
- DOCKER_BUILD_DIR=docker/vsftpd-s3
context: ../../..
context: ../..
dockerfile: docker/vsftpd-s3/Dockerfile
cap_add:
- sys_admin
container_name: ${COMPOSE_PROJECT_NAME_NODE}_vsftpd-s3
devices:
- /dev/fuse
environment:
@@ -23,14 +24,14 @@ services:
- FTPD_USERS=${VSFTPD_S3_FTPD_USERS}
- PASV_MAX_PORT=${VSFTPD_S3_PASV_MAX_PORT}
- PASV_MIN_PORT=${VSFTPD_S3_PASV_MIN_PORT}
image: ${DOCKER_REPOSITORY}/vsftpd-s3:${DOCKER_IMAGE_TAG}
hostname: ${HOSTNAME}
image: ${DOCKER_REPOSITORY_NODE}/vsftpd-s3:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_21_CHECK_TCP=true
- SERVICE_21_NAME=${COMPOSE_SERVICE_NAME}-vsftpd-s3:21
- SERVICE_21_NAME=${COMPOSE_SERVICE_NAME_NODE}-vsftpd-s3:21
- SERVICE_22_CHECK_TCP=true
- SERVICE_22_NAME=${COMPOSE_SERVICE_NAME}-vsftpd-s3:22
- SERVICE_22_NAME=${COMPOSE_SERVICE_NAME_NODE}-vsftpd-s3:22
- SERVICE_65000_IGNORE=true
hostname: ${HOSTNAME}
security_opt:
- apparmor:unconfined
network_mode: host
+5 -5
View File
@@ -1,6 +1,6 @@
RC_ATTACH_SCREEN=false
RC_ATTACH_TMUX=false
RC_CUSTOM_PROMPT=false
RC_CUSTOM_PS1=true
RC_SSH_AGENT=false
RC_PROMPT_SET=false
RC_PS1_SET=true
RC_SCREEN_ATTACH=false
RC_SSH_ADD=false
RC_TMUX_ATTACH=false
THEIA_SERVICE_3000_TAGS=urlprefix-theia.${USER}.${APP_DOMAIN}/
+8 -8
View File
@@ -12,14 +12,14 @@ services:
environment:
- ENV=${ENV}
- MONOREPO_DIR=${MONOREPO_DIR}
- RC_01_CUSTOM_PS1=${RC_CUSTOM_PS1}
- RC_02_CUSTOM_PROMPT=${RC_CUSTOM_PROMPT}
- RC_03_SSH_AGENT=${RC_SSH_AGENT}
- RC_04_ATTACH_TMUX=${RC_ATTACH_TMUX}
- RC_05_ATTACH_SCREEN=${RC_ATTACH_SCREEN}
- RC_01_PS1_SET=${RC_PS1_SET}
- RC_02_PROMPT_SET=${RC_PROMPT_SET}
- RC_03_SSH_ADD=${RC_SSH_ADD}
- RC_04_TMUX_ATTACH=${RC_TMUX_ATTACH}
- RC_05_SCREEN_ATTACH=${RC_SCREEN_ATTACH}
- SHELL=${DOCKER_SHELL}
- SSH_AUTH_SOCK=/tmp/ssh-agent/socket
- WORKSPACE_DIR=/Sources/${MONOREPO}
- WORKSPACE_DIR=/Sources
image: ${DOCKER_REPOSITORY}/theia:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_3000_CHECK_TCP=true
@@ -30,7 +30,7 @@ services:
- public
restart: always
volumes:
- monorepo:/Sources/${MONOREPO}:cached
- monorepo:/Sources:cached
- ssh-agent:/tmp/ssh-agent:ro
- /var/run/docker.sock:/var/run/docker.sock
@@ -43,7 +43,7 @@ volumes:
o: bind
ssh-agent:
external:
name: ${DOCKER_VOLUME_SSH}
name: ${DOCKER_VOLUME}
networks:
private:
-1
View File
@@ -31,7 +31,6 @@ services:
- shared:/shared:cached
- shm:/dev/shm:delegated
volumes:
home:
shared:
+8
View File
@@ -0,0 +1,8 @@
ifneq ($(filter zen,$(STACK)),)
ifeq ($(filter User/ipfs,$(STACK)),)
STACK += User/ipfs
endif
ifeq ($(filter User/ipfs,$(User)),)
User += User/ipfs
endif
endif
+52
View File
@@ -0,0 +1,52 @@
version: '3.6'
services:
zen:
build:
args:
- DOCKER_BUILD_DIR=docker/zen
- GID=${GID}
- GIT_AUTHOR_NAME=${GIT_AUTHOR_NAME}
- GIT_AUTHOR_EMAIL=${GIT_AUTHOR_EMAIL}
- IPFS_VERSION=0.13.0
- UID=${UID}
- USER=${USER}
context: ../..
dockerfile: docker/zen/Dockerfile
depends_on:
- ipfs
environment:
- ENV=${ENV}
- SHELL=${DOCKER_SHELL}
- SSH_AUTH_SOCK=/tmp/ssh-agent/socket
image: ${DOCKER_REPOSITORY}/zen:${DOCKER_IMAGE_TAG}
networks:
- private
restart: always
user: ${UID}:${GID}
volumes:
- astroport:${HOME}/astroport:cached
- ipfs:${HOME}/.ipfs:ro
- zen:${HOME}/.zen:delegated
- ssh-agent:/tmp/ssh-agent:ro
working_dir: ${HOME}/.zen
volumes:
astroport:
ipfs:
external: true
name: ${COMPOSE_PROJECT_NAME_USER}_ipfs
ssh-agent:
external: true
name: ${DOCKER_VOLUME}
zen:
driver: local
driver_opts:
type: none
device: ${HOME}/.zen
o: bind
networks:
private:
external: true
name: ${DOCKER_NETWORK_PRIVATE}