前言:上篇文章写了怎么使用docker拉取已经制作好的镜像来制作lnmp容器.这一次,通过自己编写Dockerfile来进行制作自己需要的镜像
地址:https://github.com/751836594/docker-squid-php-nginx-supervisor
- 制作Dockerfile
mkdir -p /docker/code
cd /docker/code
vim Dockerfile
内容为:
FROM centos:7
MAINTAINER steven
RUN rpm -Uvh https://mirrors.tuna.tsinghua.edu.cn/epel/epel-release-latest-7.noarch.rpm
RUN rpm -Uvh https://sp.repo.webtatic.com/yum/el7/webtatic-release.rpm
RUN yum install -y wget
RUN yum install -y sed
RUN yum install -y vim
RUN yum install -y gcc
RUN yum install -y gcc-c++
RUN yum install -y gd
RUN yum install -y gd-devel
RUN yum install -y gmp-devel
RUN yum install -y epel-release
RUN yum install -y net-tools
RUN yum install -y ntpdate
RUN yum install -y ntp
RUN yum install -y openssh-clients
RUN yum install -y curl
RUN yum install -y crontabs
RUN yum install -y git
RUN yum install -y nginx
RUN yum install -y httpd
RUN yum install -y squid
RUN yum install -y php71w \
php71w-fpm \
php71w-gd \
php71w-redis \
php71w-soap \
php71w-intl \
php71w-pdo \
php71w-pdo_mysql \
php71w-pdo_pgsql \
php71w-pear \
php71w-devel \
php71w-mysql.x86_64 --skip-broken \
php71w-mbstring
RUN sed -i 's/http_access deny all/#http_access deny all/g' /etc/squid/squid.conf
RUN cd /tmp && wget -O get-pip.py https://bootstrap.pypa.io/get-pip.py \
&& python get-pip.py
RUN pip install supervisor
EXPOSE 80 443 3128
WORKDIR /data/work/code
- 创建supervisor的配置文件和nginx的配置文件
1.创建文件夹
mkdir -p `pwd`/etc/nginx/conf.d
mkdir -p `pwd`/etc/supervisor/conf.d
2.创建配置文件
(1). 编写nginx配置文件
vim `pwd`/etc/nginx/conf.d/default.conf
内容为:
server {
listen 8080 default_server;
server_name _;
root /usr/share/nginx/html/code/;
location / {
index index.html index.htm index.php;
autoindex off;
}
location ~ \.php(.*)$ {
root /usr/share/nginx/html/code/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;