Hello @anarchomoh
So, you can get this going. @TheLumberjack was correct - you need to add the
security_opt:
- seccomp:unconfined
against every service in the docker-compose file. Only doing the one server as @TheLumberjack has it will mean that the controller will start up, but the other components will fail with the same error. I have installed Void Linux and tested, and get to the first parts of the docker-compose example.
Step 1 is to ensure that you machine has enough memory. I installed within Virtual box and 1G, 1 Proc did not cut it. I went to dual proc, 3G and had success. For sake of simplicity, here is the docker compose file in full:
[root@void openziti]# cat docker-compose.yaml
version: '2.4'
services:
ziti-controller:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
env_file:
- ./.env
ports:
- "1280:1280"
networks:
zitiblue:
aliases:
- ziti-edge-controller
zitired:
aliases:
- ziti-edge-controller
volumes:
- ziti-fs:/openziti
security_opt:
- seccomp:unconfined
entrypoint:
- "/openziti/scripts/run-controller.sh"
ziti-controller-init-container:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
depends_on:
- ziti-controller
environment:
- ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}"
- ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}"
env_file:
- ./.env
networks:
zitiblue:
aliases:
- ziti-edge-controller-init-container
zitired:
aliases:
- ziti-edge-controller-init-container
security_opt:
- seccomp:unconfined
volumes:
- ziti-fs:/openziti
entrypoint:
- "/openziti/scripts/access-control.sh"
ziti-edge-router:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
depends_on:
- ziti-controller
environment:
- ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}"
- ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}"
- ZITI_EDGE_ROUTER_RAWNAME=ziti-edge-router
- ZITI_EDGE_ROUTER_ROLES=public
ports:
- "3022:3022"
security_opt:
- seccomp:unconfined
networks:
- zitiblue
- zitired
volumes:
- ziti-fs:/openziti
entrypoint: /bin/bash
command: "/openziti/scripts/run-router.sh edge"
ziti-edge-router-wss:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
depends_on:
- ziti-controller
security_opt:
- seccomp:unconfined
environment:
- ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}"
- ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}"
- ZITI_EDGE_ROUTER_RAWNAME=ziti-edge-router-wss
- ZITI_EDGE_ROUTER_PORT=3023
- ZITI_EDGE_ROUTER_ROLES=public
ports:
- "3023:3023"
networks:
- zitiblue
- zitired
volumes:
- ziti-fs:/openziti
entrypoint: /bin/bash
command: "/openziti/scripts/run-router.sh wss"
ziti-fabric-router-br:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
depends_on:
- ziti-controller
environment:
- ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}"
- ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}"
- ZITI_EDGE_ROUTER_RAWNAME=ziti-fabric-router-br
#ports:
# - 3024:3024
security_opt:
- seccomp:unconfined
networks:
- zitiblue
- zitired
volumes:
- ziti-fs:/openziti
entrypoint: /bin/bash
command: "/openziti/scripts/run-router.sh fabric"
ziti-private-red:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
depends_on:
- ziti-controller
environment:
- ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}"
- ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}"
- ZITI_EDGE_ROUTER_RAWNAME=ziti-private-red
#ports:
# - 3025:3025
security_opt:
- seccomp:unconfined
networks:
- zitired
volumes:
- ziti-fs:/openziti
entrypoint: /bin/bash
command: "/openziti/scripts/run-router.sh private"
ziti-private-blue:
image: "${ZITI_IMAGE}:${ZITI_VERSION}"
depends_on:
- ziti-controller
environment:
- ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}"
- ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}"
- ZITI_EDGE_ROUTER_RAWNAME=ziti-private-blue
#ports:
# - 3026:3026
security_opt:
- seccomp:unconfined
networks:
- zitiblue
volumes:
- ziti-fs:/openziti
entrypoint: /bin/bash
command: "/openziti/scripts/run-router.sh private"
web-test-blue:
image: crccheck/hello-world
ports:
- "80:8000"
security_opt:
- seccomp:unconfined
networks:
zitiblue:
aliases:
- web-test-blue
- web-test.blue
- web.test.blue
ziti-console:
image: openziti/zac
environment:
- ZAC_SERVER_CERT_CHAIN=/openziti/pki/ziti-controller-intermediate/certs/ziti-controller-server.cert
- ZAC_SERVER_KEY=/openziti/pki/ziti-controller-intermediate/keys/ziti-controller-server.key
ports:
- "1408:1408"
- "8443:8443"
working_dir: /usr/src/app
volumes:
- ziti-fs:/openziti
security_opt:
- seccomp:unconfined
networks:
- zitiblue
- zitired
networks:
zitired:
driver: bridge
zitiblue:
driver: bridge
volumes:
ziti-fs:
As can be seen, this is the stock standard docker-compose with the additional config files.
Before you start it all up, lets clear out your environment. I used docker-compose for everything, instead of using docker run
, so if you have not installed docker-compose
please do this (to follow along).
In the folder where the docker-compose file is, please run docker-compose down -v
to clean the system. Then please run docker ps -a
and ensure there are no stopped ziti containers hanging around. If there is, run docker-compose down
again. This should clear it all out.
Now that is done, we should be good to go. Either type docker-compose up
if you want to see all the logs scroll up, or docker-compose up -d
to fork it into the background (can do docker logs -f <container name>
to see a particular containers logs.
Wait a while (maybe a minute), then use docker exec -it *docker-ziti-controller-name-1* /bin/bash
where docker-ziti-controller-name-1 is the name of the docker container, which can be found by docker ps | grep controller
. Once there, you can continue with the tutorial. FWIW, here is the docker-exec from my console
[root@void kelvins]# docker exec -it openziti-ziti-controller-1 /bin/bash
adding /openziti/ziti-bin to the path
ziti@9bf1fc0c0bf8:/openziti$ zitiLogin
Token: 59260357-66b9-4157-8440-56af0abf0725
Saving identity 'default' to /openziti/ziti-cli.json
ziti@9bf1fc0c0bf8:/openziti$ ziti edge list identities
โญโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโฌโโโโโโโโโโโโโฎ
โ ID โ NAME โ TYPE โ ATTRIBUTES โ
โโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโผโโโโโโโโโโโโโค
โ .iq1lZDPVW โ ziti-edge-router-wss โ Router โ โ
โ KdU6lZ3QaW โ ziti-fabric-router-br โ Router โ โ
โ Q1v1Oh3PaW โ ziti-private-blue โ Router โ โ
โ TcTvhVi2p โ Default Admin โ User โ โ
โ VTC1OZ3PV โ ziti-edge-router โ Router โ โ
โ WYs1OhDQaW โ ziti-private-red โ Router โ โ
โฐโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโดโโโโโโโโโโโโโฏ
results: 1-6 of 6
ziti@9bf1fc0c0bf8:/openziti$ ziti edge list edge-routers
โญโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโฌโโโโโโโโโโโโโโโโฌโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ ID โ NAME โ ONLINE โ ALLOW TRANSIT โ COST โ ATTRIBUTES โ
โโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโผโโโโโโโโโโโโโโโโผโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโค
โ .iq1lZDPVW โ ziti-edge-router-wss โ true โ true โ 0 โ public โ
โ KdU6lZ3QaW โ ziti-fabric-router-br โ true โ true โ 0 โ ziti-fabric-router-br โ
โ Q1v1Oh3PaW โ ziti-private-blue โ true โ true โ 0 โ ziti-private-blue โ
โ VTC1OZ3PV โ ziti-edge-router โ true โ true โ 0 โ public โ
โ WYs1OhDQaW โ ziti-private-red โ true โ true โ 0 โ ziti-private-red โ
โฐโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโดโโโโโโโโโโโโโโโโดโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโฏ
I have not gone past this test. Have fun, and lets know how you go.