Docker-COMPOSE
Hallo liebes Forum,
ich habe mal nee Frage, ich bin gerade dabei mich mit Docker zu beschäftigen und habe per Dockerfile einige WebServer und Datenbanken erstellt!
Allerdings hänge ich gerade bei einem Problem mit dem DockerCompose, bei folgender Sache!
Ich nutze Docker unter Windows, aber mit Linux Containern!
#Datei: Wordpress/docker-compose.yml
version: '3.1'
services:
nginx:
image: nginx:latest
volumes:
- ./default.conf:/etc/nginx/conf.d/default.conf <- Die Default.conf liegt bei mir im Ordner D:/Data/WEB2/default.comf wie bekomme ich das nu hin einen Mount zu machen??
- webdata:/var/www/html <- Hier auch auf D:?
ports:
- 8080:80
wordpress:
image: wordpress:fpm-alpine
restart: unless-stopped
volumes:
- webdata:/var/www/html <- Hier auch auf D:?
environment:
WORDPRESS_DB_HOST: mariadb
WORDPRESS_DB_NAME: dockerbuch
WORDPRESS_DB_USER: dockerbuch
WORDPRESS_DB_PASSWORD: johroo2zaeQu
mariadb:
image: mariadb:10
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: eengi7suXeut
MYSQL_DATABASE: dockerbuch
MYSQL_USER: dockerbuch
MYSQL_PASSWORD: johroo2zaeQu
volumes:
webdata:
Oder kann ich aus einer DockerCompose ein Dockerfile bauen und dann ein Mount machen, wenn ja wie?
Könnt ihr mir bitte helfen, habe schon in der Docker hilfe gesucht und im Internet gesucht, werde aber nicht schlau!
ich habe mal nee Frage, ich bin gerade dabei mich mit Docker zu beschäftigen und habe per Dockerfile einige WebServer und Datenbanken erstellt!
Allerdings hänge ich gerade bei einem Problem mit dem DockerCompose, bei folgender Sache!
Ich nutze Docker unter Windows, aber mit Linux Containern!
#Datei: Wordpress/docker-compose.yml
version: '3.1'
services:
nginx:
image: nginx:latest
volumes:
- ./default.conf:/etc/nginx/conf.d/default.conf <- Die Default.conf liegt bei mir im Ordner D:/Data/WEB2/default.comf wie bekomme ich das nu hin einen Mount zu machen??
- webdata:/var/www/html <- Hier auch auf D:?
ports:
- 8080:80
wordpress:
image: wordpress:fpm-alpine
restart: unless-stopped
volumes:
- webdata:/var/www/html <- Hier auch auf D:?
environment:
WORDPRESS_DB_HOST: mariadb
WORDPRESS_DB_NAME: dockerbuch
WORDPRESS_DB_USER: dockerbuch
WORDPRESS_DB_PASSWORD: johroo2zaeQu
mariadb:
image: mariadb:10
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: eengi7suXeut
MYSQL_DATABASE: dockerbuch
MYSQL_USER: dockerbuch
MYSQL_PASSWORD: johroo2zaeQu
volumes:
webdata:
Oder kann ich aus einer DockerCompose ein Dockerfile bauen und dann ein Mount machen, wenn ja wie?
Könnt ihr mir bitte helfen, habe schon in der Docker hilfe gesucht und im Internet gesucht, werde aber nicht schlau!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 438375
Url: https://administrator.de/contentid/438375
Ausgedruckt am: 25.11.2024 um 14:11 Uhr
6 Kommentare
Neuester Kommentar
Docker ist Linux-Technologie und darauf nutzt man sie für beste Ergebnisse auch. Setze dir einen Linux Desktop auf, arbeite da drin und du kannst nativ entwickeln. Wenn der Host Win bleiben muss, dann Linux wenigstens als VM, das reicht ja auch erst mal. Zur Not richtest du dir da dann einen Share ein. Wobei du das nicht mehr zwingend brauchst, wenn du sowieso in der VM arbeitest. Da kannst du vim oder einen GUI-Editor wie Visual Studio Code verwenden, je nachdem was du bevorzugst.
Ich würde zum Entwickeln die gleiche Distribution nehmen, wie nachher produktiv auf dem Server läuft. Damit kennst du dich schon aus und Probleme durch konservative Distris mit älteren Docker-Versionen werden vermieden. Wenn es nicht die gleiche Distri ist, würde ich wenigstens mit der gleichen Docker Version arbeiten.
Bevor das produktiv läuft, solltest du dich aber auch generell nach Best Practices umschauen. Der latest Tag sollte dort generell nicht genutzt werden. Ist bei nginx zwar nicht so kritisch wie bei anderen Images da die eine recht gute abwärtskompatibilität haben. Aber trotzdem sollten es mindestens Hauptversionen sein. Wobei du da dann wie bei jeder anderen Version auch ein Update-Konzept brauchst. Wenn die Images nie aktualisiert werden, bringt auch ein 1.14 Tag nicht all zu viel, was Sicherheit und Patchmanagement angeht zumindest.
Ich würde zum Entwickeln die gleiche Distribution nehmen, wie nachher produktiv auf dem Server läuft. Damit kennst du dich schon aus und Probleme durch konservative Distris mit älteren Docker-Versionen werden vermieden. Wenn es nicht die gleiche Distri ist, würde ich wenigstens mit der gleichen Docker Version arbeiten.
Bevor das produktiv läuft, solltest du dich aber auch generell nach Best Practices umschauen. Der latest Tag sollte dort generell nicht genutzt werden. Ist bei nginx zwar nicht so kritisch wie bei anderen Images da die eine recht gute abwärtskompatibilität haben. Aber trotzdem sollten es mindestens Hauptversionen sein. Wobei du da dann wie bei jeder anderen Version auch ein Update-Konzept brauchst. Wenn die Images nie aktualisiert werden, bringt auch ein 1.14 Tag nicht all zu viel, was Sicherheit und Patchmanagement angeht zumindest.