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容器时赋权

相关推荐
黑色水晶球4 分钟前
Ubuntu 安装docker
ubuntu·云原生
rchmin9 分钟前
云原生与DevOps关系解析
运维·云原生·devops
会飞的小蛮猪1 小时前
K8s-1.29.2二进制安装-第三章(Node组件 及其他插件安装)
云原生·容器·kubernetes
2501_940198692 小时前
【前瞻创想】Kurator云原生实战:打造企业级分布式云原生基础设施的完整指南与深度实践
分布式·云原生
weixin_466812 小时前
K8S-RBAC
云原生·容器·kubernetes
百以国际食品有限公司15 小时前
中国奶茶原料珍珠粉圆
云原生
永亮同学18 小时前
【探索实战】从零开始搭建Kurator分布式云原生平台:详细入门体验与功能实战分享!
分布式·云原生·交互
没有bug.的程序员21 小时前
微服务基础设施清单:必须、应该、可以、无需的四级分类指南
java·jvm·微服务·云原生·容器·架构
百以国际食品有限公司1 天前
奶茶原料珍珠粉圆品质保证
云原生
Lethehong1 天前
【探索实战】Kurator分布式云原生平台快速上手与实战指南
分布式·云原生