wordpress搭建(Dockerfile构建lap和mariadb镜像)

wordpress搭建(Dockerfile构建lap和mariadb镜像)

1,mariadb镜像

# 基础镜像
FROM mariadb:latest
# 传参
ENV MYSQL_ROOT_PASSWORD=root
# 创建数据库wordpress
RUN echo "CREATE DATABASE wordpress;" >> /docker-entrypoint-initdb.d/init.sql

2,启动mariadb容器

# 这项目可映射可不映射端口
docker run -d -p 3306:3306 --name mariadb mariadb_wordpress

3,lap镜像(centos+appche+php基础环境)

# 基础镜像
FROM centos:centos7
# 作者Denlin
MAINTAINER author<Denlin>
# 基础环境
RUN yum update -y &&\
yum clean all &&\
yum install httpd php php-mysql php-gd openssl psmisc tar -y &&\
yum clean all
ADD scripts /scripts
# 这里注释掉赋权,在宿主机映射的源文件去做赋权操作
#RUN chmod 777 /scripts/
#RUN chown -R apache.apache /scripts/
# 端口暴露
EXPOSE 80
CMD ["/bin/bash","/scripts/start.sh"]

4,脚本赋权,脚本转码

# 脚本赋权
useradd -u 48 apache
chmod 777 ./*
chown -R apache.apache ./*

# 小坑!!!脚本转码,脚本编码的问题
# 原因:Windows和Linux的.sh脚本文件格式不同,如果在脚本中有空行,脚本是在Windows下进行编辑之后上传到linux上去执行的话,就会出现问题。windows 下的换行符是\r\n,而 linux 下的换行符是\n,没有识别/r,所以会导致上述的报错,这个属于脚本编码的问题。
# 方法1
vim 脚本.sh
:set ff=unix
:wq
# 方法2
yum install -y dos2unix
dos2unix 脚本.sh

5,启动lap容器

# 传入启动脚本需要参数
docker run -d --link mariadb \
-e DB_ENV_MYSQL_USER='root' \
-e DB_ENV_MYSQL_PASSWORD='root' \
-e DB_ENV_MYSQL_DATABASE='wordpress' \
-e DB_HOST='mariadb' \
-p 80:80 -v /opt/docker/wordpress:/var/www/html  lap

6,项目gitee链接

https://gitee.com/cty2001/public.git
posted @   逸仔学Linux  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示