本篇文章主要介紹在Linux(Centons7)下安裝docker的中安裝nginx容器,以下分爲大概步驟和詳細步驟,也會把一些遇到的坑和解決方案經驗分享給大家,nginx容器安裝其實就是下載啓動即可,配置多個nginx需要額外修改即可。
Docker的三大核心概念:鏡像、容器、倉庫
鏡像:類似虛擬機的鏡像、用俗話說就是安裝文件。
容器:類似一個輕量級的沙箱,容器是從鏡像創建應用運行實例,
可以將其啓動、開始、停止、刪除、而這些容器都是相互隔離、互不可見的。
倉庫:類似代碼倉庫,是Docker集中存放鏡像文件的場所。
簡要步驟:
①、下載nginx容器
②、檢查容器、進入容器、查看容器
③、拷貝配置文件配置多個容器
④、創建配置文件、修改配置文件
⑤、修改nginx端口
⑥、啓動nginx容器
⑦、訪問nginx容器
⑧、建立軟連接(由於默認安裝的路徑內存不夠)
⑨、docker常用命令介紹
推薦博客:
1、docker官網安裝步驟
https://docs.docker.com/install/linux/docker-ce/centos/
2、Docker是什麼?可以用Docker做什麼?開發者可以使用Docker做什麼?個人對Docker的理解?
https://blog.csdn.net/zjh_746140129/article/details/82667491
3、linux安裝docker、Centons7下安裝docker
https://blog.csdn.net/zjh_746140129/article/details/89285447
詳細步驟:
一、下載nginx容器
命令解釋:80是宿主機端口80是nginx容器ip,這個時候外部訪問nginx是用服務器ip+80訪問,這個容器名字就是nginx
docker run —name nginx -p 80:80 -d nginx:1.15.8
二、檢查容器、進入容器、查看容器
1、檢查容器
docker images
2、進入容器
docker exec -it 容器id bin/bash
3、查看啓動的docker容器
docker ps
三、拷貝配置文件配置多個容器
1、進入容器拷貝配置文件
docker exec -it 容器id bin/bash
四、創建配置文件、修改配置文件
1、創建第二個nginx的配置文件修改端口
touch default.conf
vi default.conf
五、修改nginx端口
創建端口81的容器,使用外部配置文件
81是宿主機端口80是nginx容器ip
這個時候外部訪問nginx是用服務器ip+81/80訪問,雖然-p後面都是81:80 80:80,但是這2個80在docker裏面是相互隔離的
docker run --name nginx-static -p 80:80 -v /home/docker_resource/nginx/conf/default.conf:/etc/nginx/conf.d/default.conf -v /home/nginx/html:/usr/share/nginx/html -d nginx:1.15.8
docker run --name nginx-static -p 81:80 -v /home/docker_resource/nginx/conf/default.conf:/etc/nginx/conf.d/default.conf -v /home/nginx/html:/usr/share/nginx/html -d nginx:1.15.8
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/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;
#}
}
六、啓動nginx容器
七、訪問nginx容器