本文将会利用docker-compose对docker进行一键部署个人博客WordPress
部署之前要进行一定准备:
1,安装docker
2,安装docker-compose,可以参考之前这篇文章
3,官方文档,英文比较好的建议直接看官方
在linux建立文件夹my_wordpress/
<span class="token function">mkdir</span> my_wordpress/ <span class="token builtin class-name">cd</span> my_wordpress/<span class="token function">mkdir</span> my_wordpress/ <span class="token builtin class-name">cd</span> my_wordpress/mkdir my_wordpress/ cd my_wordpress/
在my_wordpress下建立docker-compose.yml
<span class="token function">vim</span> docker-compose.yml<span class="token function">vim</span> docker-compose.ymlvim docker-compose.yml
在这个yml文件中输入命令:
<span class="token key atrule">version</span><span class="token punctuation">:</span> <span class="token string">"3.9"</span> <span class="token key atrule">services</span><span class="token punctuation">:</span> <span class="token key atrule">db</span><span class="token punctuation">:</span> <span class="token key atrule">image</span><span class="token punctuation">:</span> mysql<span class="token punctuation">:</span><span class="token number">5.7</span> <span class="token key atrule">volumes</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> db_data<span class="token punctuation">:</span>/var/lib/mysql <span class="token key atrule">restart</span><span class="token punctuation">:</span> always <span class="token key atrule">environment</span><span class="token punctuation">:</span> <span class="token key atrule">MYSQL_ROOT_PASSWORD</span><span class="token punctuation">:</span> somewordpress <span class="token key atrule">MYSQL_DATABASE</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">MYSQL_USER</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">MYSQL_PASSWORD</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">wordpress</span><span class="token punctuation">:</span> <span class="token key atrule">depends_on</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> db <span class="token key atrule">image</span><span class="token punctuation">:</span> wordpress<span class="token punctuation">:</span>latest <span class="token key atrule">ports</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> <span class="token string">"8000:80"</span> <span class="token key atrule">restart</span><span class="token punctuation">:</span> always <span class="token key atrule">environment</span><span class="token punctuation">:</span> <span class="token key atrule">WORDPRESS_DB_HOST</span><span class="token punctuation">:</span> db<span class="token punctuation">:</span><span class="token number">3306</span> <span class="token key atrule">WORDPRESS_DB_USER</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">WORDPRESS_DB_PASSWORD</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">WORDPRESS_DB_NAME</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">volumes</span><span class="token punctuation">:</span> <span class="token key atrule">db_data</span><span class="token punctuation">:</span> <span class="token punctuation">{<!-- --></span><span class="token punctuation">}</span><span class="token key atrule">version</span><span class="token punctuation">:</span> <span class="token string">"3.9"</span> <span class="token key atrule">services</span><span class="token punctuation">:</span> <span class="token key atrule">db</span><span class="token punctuation">:</span> <span class="token key atrule">image</span><span class="token punctuation">:</span> mysql<span class="token punctuation">:</span><span class="token number">5.7</span> <span class="token key atrule">volumes</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> db_data<span class="token punctuation">:</span>/var/lib/mysql <span class="token key atrule">restart</span><span class="token punctuation">:</span> always <span class="token key atrule">environment</span><span class="token punctuation">:</span> <span class="token key atrule">MYSQL_ROOT_PASSWORD</span><span class="token punctuation">:</span> somewordpress <span class="token key atrule">MYSQL_DATABASE</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">MYSQL_USER</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">MYSQL_PASSWORD</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">wordpress</span><span class="token punctuation">:</span> <span class="token key atrule">depends_on</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> db <span class="token key atrule">image</span><span class="token punctuation">:</span> wordpress<span class="token punctuation">:</span>latest <span class="token key atrule">ports</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> <span class="token string">"8000:80"</span> <span class="token key atrule">restart</span><span class="token punctuation">:</span> always <span class="token key atrule">environment</span><span class="token punctuation">:</span> <span class="token key atrule">WORDPRESS_DB_HOST</span><span class="token punctuation">:</span> db<span class="token punctuation">:</span><span class="token number">3306</span> <span class="token key atrule">WORDPRESS_DB_USER</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">WORDPRESS_DB_PASSWORD</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">WORDPRESS_DB_NAME</span><span class="token punctuation">:</span> wordpress <span class="token key atrule">volumes</span><span class="token punctuation">:</span> <span class="token key atrule">db_data</span><span class="token punctuation">:</span> <span class="token punctuation">{<!-- --></span><span class="token punctuation">}</span>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 ports: - "8000:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress volumes: db_data: {}
:wq退出后,执行启动命令
docker-compose up -ddocker-compose up -ddocker-compose up -d
访问自己ip地址的8000端口即可进行建立个人博客
扩展:
在yml文件中包括三层
第一层:version:“3.9”,即docker compose的版本号
第二层:service:。。。为服务,这是yml文件的核心,其中需要注意的 depends_on:-db即为wordpress这个镜像所依赖的镜像为db,因此需要在配置wordpress之前配置db镜像。
第三层:VOLUMS为挂载卷命令其中 **.**代表当前目录
原文链接:https://blog.csdn.net/Artisan_w/article/details/117655155?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168994567316782425126562%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=168994567316782425126562&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-13-117655155-null-null.268%5Ev1%5Ekoosearch&utm_term=docker%E3%80%81wordpress%E3%80%81wordpress%E5%BB%BA%E7%AB%99%E3%80%81wordpress%E4%B8%BB%E9%A2%98%E3%80%81%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E3%80%81