Docker实战-使用docker compose搭建博客

docker run 部署

创建blog网络

bash 复制代码
[root@k8s-master ~]# docker network create blog
8f533a5a1ec65eae3f98c0ae5a76014a3ab1bf3c087ad952cdc100cc7a658948
[root@k8s-master ~]#  docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
8f533a5a1ec6   blog      bridge    local
6c444ff0e0fc   bridge    bridge    local
7172dc5dc9d3   host      host      local
5451367be09b   none      null      local

创建MySQL容器

bash 复制代码
[root@k8s-master ~]# docker run -d -p 3306:3306 \
> -e MYSQL_ROOT_PASSWORD=123456 \
> -e MYSQL_DATABASE=wordpress \
> -v mysql-data:/var/lib/mysql \
> --restart always --name mysql \
> --network blog \
> mysql:8.0
Unable to find image 'mysql:8.0' locally
8.0: Pulling from library/mysql
43759093d4f6: Pull complete 
126d8d3809b3: Pull complete 
157a7408a55d: Pull complete 
c405af89949f: Pull complete 
c92147eb3382: Pull complete 
b3ec9882b976: Pull complete 
ad072341f26b: Pull complete 
bda7c2eca56f: Pull complete 
b6b5c46ac97d: Pull complete 
8cd34fa224e6: Pull complete 
b4144aa75def: Pull complete 
Digest: sha256:50b5ee0656a2caea76506fe702b1baddabe204cf3ab34c03752d2d7cd8ad83fc
Status: Downloaded newer image for mysql:8.0
1f0d309d07db2e0bed62868a43bcff0fcb811d0507317efbffa3d6d77bf9f53b

创建wordpress容器

bash 复制代码
[root@k8s-master ~]# docker run -d -p 8080:80 \
>     -e WORDPRESS_DB_HOST=mysql \
>     -e WORDPRESS_DB_USER=root \
>     -e WORDPRESS_DB_PASSWORD=123456 \
>     -e WORDPRESS_DB_NAME=wordpress \
>     -v wordpress:/var/www/html \
>     --restart always --name wordpress-app \
>     --network blog \
>     wordpress:latest
Unable to find image 'wordpress:latest' locally
latest: Pulling from library/wordpress
c29f5b76f736: Pull complete 
814b6ecb84b0: Pull complete 
a4e58aa84c36: Pull complete 
b545bb7ff18e: Pull complete 
8ca47539e139: Pull complete 
ea823f46cc3c: Pull complete 
bcbecb454049: Pull complete 
68d70c2b9fc9: Pull complete 
b9903ecbcf0b: Pull complete 
f473bcbd0e44: Pull complete 
d8b79b64a9d5: Pull complete 
5c36aa47b3f5: Pull complete 
c6834909cd19: Pull complete 
4f4fb700ef54: Pull complete 
beeeb2e72514: Pull complete 
b7fd27be5b20: Pull complete 
1475f50d3e62: Pull complete 
5ac3fe5e5e7e: Pull complete 
e2a530cb2e77: Pull complete 
ed50d9a76bab: Pull complete 
08dc3bd6914b: Pull complete 
63eaf96fd2ee: Pull complete 
Digest: sha256:0211348df9f5e29a32cb6a65ec5aff2c2e775670fdb054ab98f7833eb539234a
Status: Downloaded newer image for wordpress:latest
3435c46b6bb674a92881e7644ce5ebb94b1b11ad36d815467628bca594e2b28e

查看运行的容器

bash 复制代码
[root@k8s-master ~]# docker ps
CONTAINER ID   IMAGE                                                             COMMAND                  CREATED          STATUS          PORTS                               NAMES
3435c46b6bb6   wordpress:latest                                                  "docker-entrypoint.s..."   26 minutes ago   Up 26 minutes   0.0.0.0:8080->80/tcp                wordpress-app
1f0d309d07db   mysql:8.0                                                         "docker-entrypoint.s..."   34 minutes ago   Up 33 minutes   0.0.0.0:3306->3306/tcp, 33060/tcp   mysql

docker-compose部署

docker-compose安装

bash 复制代码
sudo yum install -y python3 python3-pip
sudo pip3 install virtualenv
virtualenv venv
source venv/bin/activate
pip install docker-compose
bash 复制代码
[root@k8s-master ~]# cat docker_compose.yaml 
version: '3.8'  
services:
  mysql:
    image: mysql:8.0
    ports:
      - "3306:3306"
    environment:
      - MYSQL_ROOT_PASSWORD=123456
      - MYSQL_DATABASE=wordpress
    volumes:
      - mysql-data:/var/data/mysql  
      - /app/myconf:/etc/mysql/conf.d
    restart: always
    networks:
      - blog

  wordpress:
    image: wordpress
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: 123456
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - wordpress:/var/www/html
    restart: always
    networks:  
      - blog
    depends_on:
      - mysql

volumes:
  mysql-data:
  wordpress:

networks:
  blog:
           
[root@k8s-master ~]# docker compose -f docker_compose.yaml up -d 

相关推荐
陈让然1 小时前
VS Code C/C++ 插件 cpptools 内存占用异常
linux·运维
qq_316411038 小时前
商用冷柜售后报修运维管理系统开发案例
运维
智码看视界8 小时前
Day59-阿里云ACK实战:生产级K8s集群部署与运维
运维·阿里云·kubernetes·k8s·日志监控·容器运维·阿里云ack
码视野10 小时前
基于 Vue3 + Element Plus 的【智慧新能源汽车充电桩运维调度与分时共享租赁系统】设计与实现(附完整源码与PRD)
运维·人工智能·汽车·vue3
qq_4260039610 小时前
【UI自动化测试】UI自动化报错解决方案
运维·ui·自动化
网安蟹佬霸10 小时前
WAF绕过技术实战:从规则检测到编码绕过全指南(2026最新版,附Payload集与自动化脚本)
运维·安全·网络安全·架构·自动化·网安
小杨不想秃头10 小时前
信息安全工程师教程第二章密码学
运维·服务器·密码学
I'mChloe10 小时前
WGCLOUD怎么监控多台服务器?从Server、Agent 部署到监控面板实战
运维·服务器
Android系统攻城狮11 小时前
Linux PipeWire深度解析之pw_init调用流程与实战(八十三)
linux·运维·服务器·音频进阶·pipewire音频进阶
国科安芯11 小时前
轨道供电韧性:ASP4644四通道降压架构在低轨卫星平台电源管理中的适用性分析
运维·网络·数据库·嵌入式硬件·架构·状态模式·低轨卫星星座