安装需要的软件包
yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖。
yum install -y yum-utils device-mapper-persistent-data lvm2
设置yum安装源
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(国内建议安装阿里仓库)
查看可用版本
yum list docker-ce --showduplicates | sort -r
选择版本并安装
yum install docker-ce.x86_64 17.03.2.ce-1.el7.centos
启动 Docker 并设置开机自启
systemctl start docker
systemctl enable docker
测试docker是否安装成功
docker version
创建dockerfile存放目录
mkdir -p /dockerfile
cd /dockerfile/
mkdir -p php
cd php/
touch Dockerfile
下载php包
wget https://www.php.net/distributions/php-7.2.34.tar.gz
编写Dockerfile
#this docker file
#VERSION 1
#author:[email protected]
FROM centos:7
MAINTAINER [email protected]
RUN yum install -y gcc gcc-c++ make gd-devel libxml2-devel libcurl-devel libjpeg-devel libpng-devel openssl-devel
ADD php-7.2.34.tar.gz /tmp/
RUN cd /tmp/php-7.2.34 && \
./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-mysql --with-mysqli \
--with-openssl --with-zlib --with-curl --with-gd \
--with-jpeg-dir --with-png-dir --with-iconv \
--enable-fpm --enable-zip --enable-mbstring && \
make -j 4 && \
make install && \
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf && \
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf && \
sed -i "s/127.0.0.1/0.0.0.0/" /usr/local/php/etc/php-fpm.d/www.conf && \
sed -i "21a \daemonize = no" /usr/local/php/etc/php-fpm.conf && \
cp php.ini-production /usr/local/php/etc/php.ini
RUN rm -rf /tmp/php-7.2.34* && yum clean all
WORKDIR /usr/local/php
EXPOSE 9000
CMD ["./sbin/php-fpm", "-c", "/usr/local/php/etc/php-fpm.conf"]
构建配置文件,这一步有点久
docker build -t php:v1 .
确实是否成功
docker images
使用php镜像创建docker容器
docker run -it -d --name=php_v1 --network=test php:v1
别多点一次运行,不然提示你,已经有这个容器了
验证php容器是否运行
docker ps -a
结束,容器正在运行中。