dockerfile基于NMP+wordpress创建镜像

|-------|--------------|--------------|
| | 内部通信地址 | |
| nginx | 172.111.0.10 | docker-nginx |
| mysql | 172.111.0.20 | docker-mysql |
| php | 172.111.0.30 | docker-php |

1、创建单独目录

2、创建容器的自定义网络

docker network create --subnet=172.111.0.0/16 --opt "com.docker.network.bridge.name"="docker1" mynetwork

3、dockerfile自定义镜像

(1)nginx镜像

①准备好nginx的配置文件

②创建nginx基础镜像

③构建nginx镜像

docker build -t nginx:lnmp .

④创建nginx容器

docker run -itd --name nginx -p 80:80 -v /opt/nginx:/opt/nginxlogs --net mynetwork --ip 172.111.0.10 nginx:lnmp

/opt/nginx宿主机的目录

/opt/nginxlogs容器的目录

⑤测试

(2)mysql镜像

①准备好mysql的配置文件

②创建mysql镜像

③构建mysql镜像

docker build -t mysql:lnmp .

④创建mysql容器(一定要给权限)

docker run -itd --name mysql -p 3306:3306 --privileged -v /opt/mysql:/opt/mysql --net mynetwork --ip 172.111.0.20 mysql:lnmp

⑤测试

(3)php镜像

①准备好php的配置文件

②创建php镜像

③构建php镜像

docker build -t php:lnmp .

④创建php容器(解析php文件,需要挂载nginx和mysql)

docker run -itd --name php -p 9000:9000 --volumes-from nginx --volumes-from mysql --net mynetwork --ip 172.111.0.30 php:lnmp

⑤测试

浏览器访问http://20.0.0.16/wordpress/index.php

问题:无法写入php文件

原因:nginx的html没有赋权

解决:创建nginx容器时赋权

相关推荐
Geek-Chow7 小时前
在 EKS Fargate 上做微服务蓝绿发布:把切换点放在 ALB 上
微服务·云原生·架构·devops·蓝绿部署
凌虚(失业了求个工作)11 小时前
Kubernetes 编年史:从 Borg 到云原生操作系统
云原生·容器·kubernetes
SLD_Allen11 小时前
从Cloud Native到AI Native:K8s DRA与Agent协议栈
人工智能·云原生·kubernetes·cloud native·ai native
冰封之寂11 小时前
Kubernetes Pod 管理完全指南:从基础命令到高级调度
云原生·容器·kubernetes
ZzzZZzzzZZZzzzz…11 小时前
K8s实战: 用OpenELB破解Service外部访问难题
云原生·容器·kubernetes
星核0penstarry11 小时前
OpenAI 模型第三方网络安全评估事件解析:背景、原理与改进路径(2)
安全·web安全·云原生
风曦Kisaki1 天前
Kubernetes(K8s)笔记Day06: 持久化存储(emptyDir,hostPath,NFS),PV 和 PVC,StorageClass存储类
linux·运维·笔记·云原生·容器·kubernetes
Crazy________1 天前
k8s部署若依微服务架构流程,v3.6.6
运维·云原生·容器·kubernetes·状态模式
阿里云云原生1 天前
AI 创新实践论坛·上海站精彩回顾 & PPT 下载
云原生
阿里云云原生1 天前
轮子还要自己造吗?SRE 团队视角:从“全栈自研”到“拥抱云原生可观测底座”的思考
云原生