Ich habe this gefunden, aber nicht für mich arbeiten.docker-komponieren Speichern/Laden von Bildern auf einen anderen Host
My (wirklich) einfach Docker-compose.yml
version: '3.1'
services:
wordpress:
image: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_PASSWORD: example
mysql:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
Beginn:
docker-compose up
Nach etwas Änderung Container (installieren Plugins und Themes auf Wordpress) gemacht.
docker-compose stop
docker commit main_mysql_1 test-mysql
docker commit main_wordpress_1 test-wordpress
docker save test-mysql > test-mysql.tar
docker save test-wordpress > test-wordpress.tar
Speichern Sie die zwei tar-Dateien auf einem anderen Computer und laden sie:
docker load -i ./test-mysql.tar
docker load -i ./test-wordpress.tar
Nun ist die ändern Docker-compose.yml zu:
version: '3.1'
services:
wordpress:
image: test-wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_PASSWORD: example
mysql:
image: test-mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
Aber der Container gestartet ist Wordpress von Grund auf neu. Nichts von der Arbeit (Plugin, Themes, etc.) wurde beibehalten.
Was ist mein Fehler? Ich möchte kein Online-Repository für diese privaten Zwecke verwenden ... Könnten Sie ein einfacheres und leistungsfähigeres Verfahren für die Weitergabe von Containern zwischen zwei Hosts vorschlagen?
Eine Abhilfe mit einem Volumen:
version: '3.1'
services:
wordpress:
container_name: GREB_wordpress
image: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_PASSWORD: example
volumes:
- ./www:/var/www/html
mysql:
container_name: GREB_mysql
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- ./mysql_data:/var/lib/mysql
I habe die Volumes komplett vermisst :) – elbowz