CentOS7 Docker Nginx部署及運行實例分析

1、資源準備

dockerfile文件

#?"ported"?by?adam?miller?<maxamillion>?from? #??https://github.com/fedora-cloud/fedora-dockerfiles? #? #?originally?written?for?fedora-dockerfiles?by? #??scollier?<scollier>? ? from?centos:centos7? maintainer?the?centos?project?<cloud-ops>? ? run?yum?-y?update;?yum?clean?all? run?yum?-y?install?epel-release?tar?;?yum?clean?all? run?yum?-y?install?nginx?;?yum?clean?all? add?nginx.conf?/opt/deploy/nginx/nginx.conf? run?echo?"daemon?off;"?&gt;&gt;?/opt/deploy/nginx/nginx.conf? #run?cURL?https://git.centos.org/sources/httpd/c7/acf5cccf4afaecf3afeb18c50ae59fd5c6504910?? #??|?tar?-xz?-c?/usr/local/nginx/html?? #??--strip-components=1? #run?sed?-i?-e?'s/apache/nginx/g'?-e?'/apache_pb.gif/d'??? #??/usr/local/nginx/html/index.html? ? expose?80? ? #cmd?[?"/usr/local/nginx/sbin"?]</cloud-ops></scollier></maxamillion>

注意:路徑需要在系統上面存在以及對應

nginx.conf文件

#?for?more?information?on?configuration,?see:? #??*?official?english?documentation:?http://nginx.org/en/docs/? #??*?official?russian?documentation:?http://nginx.org/ru/docs/? ? user?nginx;? worker_processes?1;? ? error_log?/usr/logs/nginx/error.log;? #error_log?/var/log/nginx/error.log?notice;? #error_log?/var/log/nginx/error.log?info;? ? pid????/run/nginx.pid;? ? ? events?{? ??worker_connections?1024;? }? ? ? http?{? ??include????mime.types;? ??default_type?application/octet-stream;? ? ??log_format?main?'$remote_addr?-?$remote_user?[$time_local]?"$request"?'? ???????????'$status?$body_bytes_sent?"$http_referer"?'? ???????????'"$http_user_agent"?"$http_x_forwarded_for"';? ? ??access_log?/usr/logs/nginx/access.log?main;? ? ??sendfile????on;? ??#tcp_nopush???on;? ? ??#keepalive_timeout?0;? ??keepalive_timeout?65;? ? ??#gzip?on;? ? ??#?load?modular?configuration?files?from?the?/etc/nginx/conf.d?directory.? ??#?see?http://nginx.org/en/docs/ngx_core_module.html#include? ??#?for?more?information.? ??#include?/etc/nginx/conf.d/*.conf;? ? ??index??index.html?index.htm;? ? ??server?{? ????listen????80;? ????server_name?localhost;? ????root?????/usr/share/nginx/html;? ? ????#charset?koi8-r;? ? ????#access_log?/var/log/nginx/host.access.log?main;? ? ????location?/?{? ??????autoindex?on;? ????}? ? ????#?redirect?server?error?pages?to?the?static?page?/40x.html? ????#? ????error_page?404???????/404.html;? ????location?=?/40x.html?{? ????}? ? ????#?redirect?server?error?pages?to?the?static?page?/50x.html? ????#? ????error_page??500?502?503?504?/50x.html;? ????location?=?/50x.html?{? ????}? ? ????#?proxy?the?php?scripts?to?apache?listening?on?127.0.0.1:80? ????#? ????#location?~?.php$?{? ????#??proxy_pass??http://127.0.0.1;? ????#}? ? ????#?pass?the?php?scripts?to?fastcgi?server?listening?on?127.0.0.1:9000? ????#? ????#location?~?.php$?{? ????#??root??????html;? ????#??fastcgi_pass??127.0.0.1:9000;? ????#??fastcgi_index?index.php;? ????#??fastcgi_param?script_filename?/scripts$fastcgi_script_name;? ????#??include????fastcgi_params;? ????#}? ? ????#?deny?access?to?.htaccess?files,?if?apache's?document?root? ????#?concurs?with?nginx's?one? ????#? ????#location?~?/.ht?{? ????#??deny?all;? ????#}? ??}? ? ? ??#?another?virtual?host?using?mix?of?ip-,?name-,?and?port-based?configuration? ??#? ??#server?{? ??#??listen????8000;? ??#??listen????somename:8080;? ??#??server_name?somename?alias?another.alias;? ??#??root?????html;? ? ??#??location?/?{? ??#??}? ??#}? ? ? ??#?https?server? ??#? ??#server?{? ??#??listen????443;? ??#??server_name?localhost;? ??#??root?????html;? ? ??#??ssl?????????on;? ??#??ssl_certificate???cert.pem;? ??#??ssl_certificate_key?cert.key;? ? ??#??ssl_session_timeout?5m;? ? ??#??ssl_protocols?sslv2?sslv3?tlsv1;? ??#??ssl_ciphers?high:!anull:!md5;? ??#??ssl_prefer_server_ciphers??on;? ? ??#??location?/?{? ??#??}? ??#}? ? }

注意:路徑需要在系統上面存在以及對應

2、執行構建鏡像命令

復制代碼?代碼如下:

[root@localhost nginx]# sudo docker build –rm –tag os7/nginx:centos7 .?

執行結果截圖:

CentOS7 Docker Nginx部署及運行實例分析

3、查看鏡像是否安裝構建成功 docker images

CentOS7 Docker Nginx部署及運行實例分析

4、創建容器 docker run -i -t -d -p 192.168.32.129:81:80 os7/nginx /bin/bash

注意:192.168.32.129這個ip的話,則需要在/etc/hosts中添加

192.168.32.129???? localhost

5、查看容器是否創建成功并啟動 docker ps

CentOS7 Docker Nginx部署及運行實例分析

6、測試是否成功訪問 curl http://192.168.32.129:81

CentOS7 Docker Nginx部署及運行實例分析

會出現這個拒絕連接,那怎么辦呢?有辦法解決的,我們先進入該容器里面

7、進入容器 docker exec -i -t small_hodgkin /bin/sh

CentOS7 Docker Nginx部署及運行實例分析

8、接著在容器里面執行(直接輸入即可)

nginx

9、在容器外面執行 curl http://192.168.32.129:81

CentOS7 Docker Nginx部署及運行實例分析

成功了。

10、再到虛擬機外面通過瀏覽器訪問

CentOS7 Docker Nginx部署及運行實例分析

? 版權聲明
THE END
喜歡就支持一下吧
點贊13 分享