Docker 安装
curl -sSL https://get.daocloud.io/docker | sh
Docker-Compose 安装并设置权限
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.3.3/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
配置 Docker 镜像源
创建 daemon.json 文件
sudo mkdir -p /etc/docker
写入镜像源
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn","https://registry.docker-cn.com"]
}
EOF
赋予普通用户执行 Docker 命令
gpasswd -a username docker
重启 Docker 服务
sudo service docker restart
部署 MySQL 容器
docker run --name mysql --restart=always -d -p port:3306 -v $PWD/mysql/data:/var/lib/mysql -v $PWD/mysql/conf/conf.d:/etc/mysql/conf.d -v $PWD/mysql/log:/var/log/mysql -e MYSQL_ROOT_PASSWORD="××××××××××" mysql
部署 phpMyAdmin 容器
docker run --name phpmyadmin --restart=always -d --link mysql:db -p port:80 phpmyadmin/phpmyadmin
部署 WordPress 容器
docker run --name wordpress --restart=always -d -p port:80 --link mysql:db -v $PWD/wordpress:/var/www/html wordpress
部署 Nginx 容器
docker run -p port:80 -p port:443 --name nginx --restart=always -v $PWD/nginx/nginx.conf:/etc/nginx/nginx.conf -v $PWD/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v $PWD/nginx/log:/var/log/nginx -v $PWD/nginx/html:/usr/share/nginx/html -v $PWD/nginx/cert:/etc/nginx/cert -d nginx
Nginx 初始配置文件
Nginx 初始配置文件
部署 NextCloud 容器
docker run -d --name nextcloud --restart=always -p port:80 --link wordpress_mysql:db -v $PWD/nextcloud/:/var/www/html/ nextcloud
以 www-data 身份运行 crontab
crontab -u www-data -e
*/5 * * * * docker exec --user www-data ${container id} php cron.php
|