我创建了两个用docker tag
制作的映像并将其推送到Docker Hub。
REPOSITORY TAG IMAGE ID CREATED SIZE
wordpress 5.2.2-php7.1-apache wordpress_image_id 2 weeks ago 438MB
username/repos wordpress wordpress_image_id 2 weeks ago 438MB
mysql 5.7 mysql_image_id 2 weeks ago 447MB
username/repos mysql mysql_image_id 2 weeks ago 447MB
...
然后我更改了docker-compose.yml
以拉动并使用这些图像
version: '3.3'
services:
db:
# image: mysql:5.7
image: username/repos:mysql
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
# image: wordpress:5.2.2-php7.1-apache
image: username/repos:wordpress
ports:
- "8010:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
working_dir: /var/www/html
volumes:
- ./wp-content:/var/www/html/wp-content
- ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
volumes:
db_data: {}
然后,我偶然发现了docker volume ls
和docker volume prune
并给了这两个选项,现在localhost:8010
加载了5分钟的Wordpress安装。我尝试了docker pull
的两个映像,但这仍然是安装页面。这真的很好,因为我知道我可以很快恢复它。
但是我的问题是在推送的图片中甚至上传了什么? docker tag
所做的仅仅是复制wordpress:5.2.2-php7.1-apache
和mysql:5.7
的原始图像吗?如果是这样,那么如何创建映像以反映我对本地开发所做的更改,并在Vultr CentOS服务器上的本地开发和远程服务器中使用它们?