Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docker-compose-Setup in Ansible überführen #41

Open
penguineer opened this issue Nov 15, 2022 · 8 comments
Open

docker-compose-Setup in Ansible überführen #41

penguineer opened this issue Nov 15, 2022 · 8 comments
Labels
debt Technical Debt good first issue Good for newcomers

Comments

@penguineer
Copy link
Member

Ein großer Teil der Container wird noch über Docker-Compose aufgesetzt. Wir sollten das in Ansible überführen, um hier eine einheitliche Konfigurationsschicht zu haben.

@penguineer penguineer added the debt Technical Debt label Nov 15, 2022
@penguineer penguineer added the good first issue Good for newcomers label Nov 30, 2022
@24367dfa
Copy link
Contributor

docker-compose in ansible wäre auch noch eine Option

@24367dfa
Copy link
Contributor

24367dfa commented Jan 2, 2023

dkdent@gw01:~$ docker ps
CONTAINER ID   IMAGE                      COMMAND                  CREATED         STATUS         PORTS     NAMES
986a2c8c2ae7   jool-docker                "/root/run.sh"           6 days ago      Up 9 minutes             jool-docker_jool_1
0560fa2296f8   klausdieter371/wg-docker   "/scripts/run.sh"        3 weeks ago     Up 6 days                wg-docker_wg_1
b9b742fec6b0   yanic                      "/bin/sh -c '/go/bin…"   23 months ago   Up 6 days                ffmd_yanic
31e3c0af2b33   docker-dns64_dns64         "/docker-entry.sh '/…"   2 years ago     Up 6 days                docker-dns64_dns64_1
dkdent@gw01:~$ docker inspect 98 | grep com.docker.compose
                "com.docker.compose.config-hash": "a12049441338b40ac5073e5d95cc0dd6510f3fbede080150a905d15fca1ff13f",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "jool-docker",
                "com.docker.compose.project.config_files": "docker-compose.yaml",
                "com.docker.compose.project.working_dir": "/root/jool-docker",
                "com.docker.compose.service": "jool",
                "com.docker.compose.version": "1.27.4",
dkdent@gw01:~$ docker inspect 05 | grep com.docker.compose
                "com.docker.compose.config-hash": "245656998c42ba4394722bae83d2ebbd381ea7b268a4adee6be4673d2b953e10",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "wg-docker",
                "com.docker.compose.project.config_files": "docker-compose.yaml",
                "com.docker.compose.project.working_dir": "/root/wg-docker",
                "com.docker.compose.service": "wg",
                "com.docker.compose.version": "1.27.4"
dkdent@gw01:~$ docker inspect b9 | grep com.docker.compose
                "com.docker.compose.config-hash": "4c26f4eaabfc38b4c9ee62511c48fb83fd840ddedfdae23a6caa4f08e6eb848a",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "ffmd-yanic",
                "com.docker.compose.service": "yanic",
                "com.docker.compose.version": "1.21.0",
dkdent@gw01:~$ docker inspect 31 | grep com.docker.compose
                "com.docker.compose.config-hash": "0336d1f2cb61e4297a629f0f2c3d982a2dc67abf6dfe1f68fc5ce404bddbfc0e",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "docker-dns64",
                "com.docker.compose.service": "dns64",
                "com.docker.compose.version": "1.21.0"

Für mich sieht das so aus, als ob einzelne Container (jool und wg) ihre separaten docker-compose Files bekommen haben und die anderen noch aus dem alten gemeinsamen docker-compose.yaml gestartet werden. Entspricht das ungefähr dem, was ihr da als Bild im Kopf habt?

Ich habe mir gerade einmal alle meinem Verständnis nach relevanten Dateien gezogen, werde das aber vorerst nicht einchecken, da da noch Secrets drin stehen.

@penguineer
Copy link
Member Author

Ja, das ist etwas zersplittert, weil wir auch noch Admin-Möglichkeiten gesucht haben. Ein paar Services haben ihre eigenen Docker-Compose-Dateien und ich glaube, auf web hat @Kwa5ir mal ein einzelnes, großes File angelegt.

@penguineer
Copy link
Member Author

dkdent@gw01:~$ docker ps
CONTAINER ID   IMAGE                      COMMAND                  CREATED         STATUS         PORTS     NAMES
986a2c8c2ae7   jool-docker                "/root/run.sh"           6 days ago      Up 9 minutes             jool-docker_jool_1
0560fa2296f8   klausdieter371/wg-docker   "/scripts/run.sh"        3 weeks ago     Up 6 days                wg-docker_wg_1
b9b742fec6b0   yanic                      "/bin/sh -c '/go/bin…"   23 months ago   Up 6 days                ffmd_yanic
31e3c0af2b33   docker-dns64_dns64         "/docker-entry.sh '/…"   2 years ago     Up 6 days                docker-dns64_dns64_1
dkdent@gw01:~$ docker inspect 98 | grep com.docker.compose
                "com.docker.compose.config-hash": "a12049441338b40ac5073e5d95cc0dd6510f3fbede080150a905d15fca1ff13f",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "jool-docker",
                "com.docker.compose.project.config_files": "docker-compose.yaml",
                "com.docker.compose.project.working_dir": "/root/jool-docker",
                "com.docker.compose.service": "jool",
                "com.docker.compose.version": "1.27.4",
dkdent@gw01:~$ docker inspect 05 | grep com.docker.compose
                "com.docker.compose.config-hash": "245656998c42ba4394722bae83d2ebbd381ea7b268a4adee6be4673d2b953e10",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "wg-docker",
                "com.docker.compose.project.config_files": "docker-compose.yaml",
                "com.docker.compose.project.working_dir": "/root/wg-docker",
                "com.docker.compose.service": "wg",
                "com.docker.compose.version": "1.27.4"
dkdent@gw01:~$ docker inspect b9 | grep com.docker.compose
                "com.docker.compose.config-hash": "4c26f4eaabfc38b4c9ee62511c48fb83fd840ddedfdae23a6caa4f08e6eb848a",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "ffmd-yanic",
                "com.docker.compose.service": "yanic",
                "com.docker.compose.version": "1.21.0",
dkdent@gw01:~$ docker inspect 31 | grep com.docker.compose
                "com.docker.compose.config-hash": "0336d1f2cb61e4297a629f0f2c3d982a2dc67abf6dfe1f68fc5ce404bddbfc0e",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "docker-dns64",
                "com.docker.compose.service": "dns64",
                "com.docker.compose.version": "1.21.0"

Für mich sieht das so aus, als ob einzelne Container (jool und wg) ihre separaten docker-compose Files bekommen haben und die anderen noch aus dem alten gemeinsamen docker-compose.yaml gestartet werden. Entspricht das ungefähr dem, was ihr da als Bild im Kopf habt?

Ich habe mir gerade einmal alle meinem Verständnis nach relevanten Dateien gezogen, werde das aber vorerst nicht einchecken, da da noch Secrets drin stehen.

Für die Secrets haben wir auch noch keine abgestimmte Lösung, weil es bislang im Ansible keine gab.

@penguineer
Copy link
Member Author

Möglicherweise ist der effektivste nächste Schritt hier, die Fragen zu finden, die wir auf dem nächsten Freifunk-Treffen beantworten sollten. Insbesondere auch in Hinblick darauf, wie wir das in Zukunft lösen wollen.

@penguineer
Copy link
Member Author

docker-compose in ansible wäre auch noch eine Option

Wir könnten auch in einem ersten Schritt die docker-compose files direkt über Ansible ausführen und sie dann durch Ansible-Aufrufe ablösen.

@24367dfa
Copy link
Contributor

jool wird wegen kernelmodul genau beim start des containers gebaut

@christf
Copy link
Contributor

christf commented Jan 16, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
debt Technical Debt good first issue Good for newcomers
Projects
Status: TODO
Development

No branches or pull requests

3 participants