目录
5,验证nginx容器是否搭建成功:curl 192.168.10.1:80 或者访问web界面:192.168.10.1:80
二,创建MySQL容器,下载MySQL源码包,wget ,直接拖入即可,开头有提示。
3,生成mysql镜像文件并启动镜像容器(需要在对应目录中完成)
一,首先创建好环境:
1,下载centos7镜像:docker search centos7 ==> docker pull couchbase/centos7-systemd
2,创建目录:cd /opt/ mkdir mysql nginx php
3,上传压缩包:cd mysql ==> mysql-boost-5.7.20.tar.gz
Cd nginx ==> nginx-1.12.0.tar.gz Discuz_X3.3_SC_UTF8.zip
Cd php ==> php-7.1.10.tar.bz2
二,然后进入:cd /opt/nginx
1,编写dockerfile文件:
Vim Dockerfile
FROM centos:7 (源镜像)
MAINTAINER this is nginx image <lnmp>(该镜像的说明)
RUN yum install -y pcre-devel zlib-devel gcc gcc-c++ make;useradd -M -s /sbin/nologin nginx(在Dockerfile文件中执行该命令)
ADD nginx-1.12.0.tar.gz /usr/local/src/(解压该文件到该目录下)
WORKDIR /usr/local/src/nginx-1.12.0(进入到解压目录下)
RUN ./configure \(执行命令)
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module;make -j 2 && make install
ENV PATH /usr/local/nginx/sbin:$PATH(设置环境变量)
ADD nginx.conf /usr/local/nginx/conf/ (将文件复制到该目录下)
ADD upload.tar.gz /usr/local/nginx/html/(同上)
RUN chmod 777 -R /usr/local/nginx/html/(执行该命令)
EXPOSE 80 (暴露端口)
VOLUME [ "/usr/local/nginx/html/" ] (挂载卷)
CMD [ "/usr/local/nginx/sbin/nginx","-g","daemon off;" ] (运行指令)
2,创建nginx配置文件:
Vim nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
charset utf-8;
location / {
root html;
index index.html index.php;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
root html;
fastcgi_pass 172.17.0.4:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
}
}
3,创建nginx镜像:(注意最后的点,不可省略)
docker build -t nginx:lnmp .
docker images
4,启动nginx容器并且为容器指定IP地址:
Docker run -itd --name nginx -p 80:80 -m 500m --memory-swap 1g --ip 172.17.0.2 nginx:lnmp
5,验证nginx容器是否搭建成功:curl 192.168.10.1:80 或者访问web界面: