docker-compose.yaml 是 Compose 的核心,咱们一定要学会 yaml 编写的规则
当然,咱们还是查看官方文档,compose 部分
compose file
yaml 文件的结构分为三层:
版本号
服务名
version:'' # 版本号
services:
服务器1 web:
当前服务的配置,这个部分就可以和DockerFile 写的差不多了
build
depends_on
...
服务2 redis:
...
服务n mongodb:
network:
volume:
...
其他配置
进入 dockerhub 网页,https://docs.docker.com/compose/compose-file/compose-file-v3/
官网上的这些都是可以使用的版本,如官网给出的例子:
version: "3.9"
services:
redis:
image: redis:alpine
ports:
- "6379"
networks:
- frontend
deploy:
replicas: 2
update_config:
parallelism: 2
delay: 10s
restart_policy:
condition: on-failure
...
networks:
frontend:
backend:
volumes:
db-data:
services 下面可以写的命令非常的多,文档上也讲的非常的详细
/dev/shm
,例如 shm_size: '2gb'如上命令还是非常的多,我们一下子肯定也是记不住的,需要我们慢慢去熟悉,用的多了,写的多了,看得多了,知识慢慢的也根深蒂固了
咱们学习的方法有:
咱们来使用 docker-compose.yaml 的方式来搭建我们的个人博客,感受一下一键部署的魅力
mkdir my_wordpress
cd my_wordpress
version: "3.9"
services:
db:
image: mysql:5.7
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:latest
volumes:
- wordpress_data:/var/www/html
ports:
- "8888:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
wordpress_data: {}
解释一下 docker-compose.yaml 文件的含义:
/var/lib/mysql
,默认使用的是具名挂载,所有会挂载到宿主机的这个路径 /var/lib/docker/volumes/my_wordpress_db_data/_data
/var/www/html
,会挂载到我们宿主记得这个目录 /var/lib/docker/volumes/my_wordpress_wordpress_data/_data
在工作目录执行如下指令一键部署服务
#docker-compose up
我们也可以在让服务在后台启动
#docker-compose up -d
启动之后我们可以看到程序先去创建网络,创建对应的挂载卷
开始创建并启动对应的容器
我们可以访问博客地址:服务器的IP:8888
nice,使用docker-compose.yaml 搭建个人的 wordpress 博客成功!!!
wordpress 的界面是这个样子的,里面的功能很多,直接就在页面上定制化我们自己的页面,非常方便,xdm 可以尝试一波,不亏
参考资料
朋友们,你的支持和鼓励,是我坚持分享,提高质量的动力
好了,本次就到这里
技术是开放的,我们的心态,更应是开放的。拥抱变化,向阳而生,努力向前行。
我是小魔童哪吒,欢迎点赞关注收藏,下次见~