我创建了一个Wordpress网站,下面是
docker-compose.yml
。
我用
docker-compose up -d
启动了它(注意,MySQL 和 Wordpress 数据被持久化在本地目录的子目录中:
./mysql
和
./wp
)。
然后让我们假设我们重新启动主机服务器。
你将如何重新启动这些容器/这个网站?
你会不会只是重做
docker-compose up -d
?
我试了一下,确实有效,但这实际上是
重新创建了
新容器!幸运的是,由于它重用了相同的数据目录,而且它
检测到
/var/www/html
是非空的
,因此不会触发新的Wordpress安装,所以 "一切正常",但是,
既然网站已经存在
,
重新创建新的容器
不是不好的做法吗?
有没有一种更 "优雅 "的方法,在主机服务器重启后重新启动用
docker-compose
制作的容器,而不是 "重新创建 "容器?
version: '2'
services:
image: mysql:5.7
volumes: ['./mysql:/var/lib/mysql']
restart: always
environment:
MYSQL_ROOT_PASSWORD: abcdef
MYSQL_DATABASE: wordpress
MYSQL_USER: wp
MYSQL_PASSWORD: abcabc
wordpress:
depends_on: ['db']
image: wordpress:latest
volumes: ['./wp:/var/www/html']
ports: ['8000:80']
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wp
WORDPRESS_DB_PASSWORD: abcabc