基于openAnolis容器镜像生成PHP 7并部署应用的Dockerfile

本文介绍了基于阿里龙蜥操作系统(openAnolis)制作一个容器镜像(docker image),并且完成部署php应用的全部过程,生成的Dockerfile可以用于部署此类PHP Web应用。

1. 环境准备

  • 安装docker,自行百度。
  • 准备你自己的PHP Web应用程序,这里假定放在test目录下。

上述文件需要和Dockerfile放在同一个目录中。

2. 编辑Dockerfile

# 基础镜像,这里采用阿里龙蜥openanolis 8.8版本
FROM registry.openanolis.cn/openanolis/anolisos:8.8
# 设置系统编码
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& dnf update -y \
&& dnf upgrade -y \
&& dnf install -y langpacks-zh_CN \
&& echo -e 'export LANG="zh_CN.UTF-8"\nexport LC_ALL="zh_CN.UTF-8"' > /etc/locale.conf \
&& source /etc/locale.conf
ENV LANG zh_CN.UTF-8
ENV LC_ALL zh_CN.UTF-8
#安装apache+php
RUN dnf install -y epel-release \
https://rpms.remirepo.net/enterprise/remi-release-8.rpm \
&& dnf update -y \
&& dnf install -y php74 php74-php-fpm php74-php-mysqlnd php74-php-pear php74-php-pecl-zip \
php74-php-mbstring php74-php-gd php74-php-soap libjpeg* php74-php-pecl-mcrypt \
php74-php-devel php74-php-pecl-redis5 php74-php-pecl-gearman php74-php-pecl-mongodb

# 将应用程序拷贝到tomcat的webapps目录下
COPY test /var/www/html/test

# 公开端口
EXPOSE 80

# 设置启动命令
CMD ["/usr/sbin/init"]

3. 编译并运行Dockerfile

启动一个php7容器,测试应用是否可以正常启动,注意这里要加上--privileged=true的参数

docker build -t anolisos8-php7-test:1.0 .
docker run -itd --name test -p 80:80 --privileged=true anolisos8-php7-test:1.0 /usr/sbin/init

之后使用浏览器访问http://localhost/test,测试应用是否运行正常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值