docker pull nginx
將 nginx.買粉絲nf 配置文件放在 /your/dir/買粉絲nf/ 下。
將 default.買粉絲nf 配置文件放在 /your/dir/買粉絲nf/買粉絲nf.d 下。
將容器 80 端口映射到主機 80 端口。
基于 Docker 安裝 Nginx
查找Nginx鏡像
語法:docker search nginx
示例:
獲取Nginx鏡像
示例:
啟動nginx容器實例
說明:--name nginx nginx 第一個nginx是通過--name指定的nginx容器實例的名稱,另一個nginx表示nginx倉庫的名稱。
查看nginx容器實例的進程信息
通過ps -ef | grep nginx查看
進入nginx容器內
殺死nginx容器實例
停止nginx實例
啟動nginx容器實例
重啟nginx容器實例
移除nginx容器實例
案例
暴露外部端口
基于docker run -d --name nginx nginx方法啟動nginx后,Docker 容器并沒有對外暴露訪問的端口,即無法通過當前主機外部瀏覽器器訪問nginx。那么該怎么樣呢?
語法:
-p 80:80:通過-p來指定Docker容器中nginx實例對外開放的端口。本例中,第一個80端口是對外開放的端口,第二個80端口指對外開放的端口映射到容器里的端口號。
示例:
通過當前主機外的瀏覽器訪問nginx,如下圖:
指定外部的配置文件
語法:
說明:
-v: 表示掛載一個本機目錄或文件到容器里。
-v /develop/nginx/nginx.買粉絲nf:/etc/nginx/nginx.買粉絲nf:將/develop/nginx/nginx.買粉絲nf配置文件掛載到容器中/etc/nginx/nginx.買粉絲nf這個配置文件中。
-v /develop:/develop:將/develop這個目錄掛載到容器里的/develop這個目錄里。
示例:
注意事項:指定外部配置文件,同時需要指定nginx的首頁面,否則會拋出404錯誤,原因就是因為nginx找不到配置文件中默認的index頁面。
本例中,使用/develop/apps/static/index.買粉絲替代了容器里的nginx默認的index頁面,同時,-v /develop:/develop掛載根目錄即可訪問子目錄。
指定網絡模式:--買粉絲=bridge 默認模式
其中8080是指主機的端口,而80是指容器的端口
我們先看一下端口的狀態
docker是運行在Linux上的,在Windows中運行docker,實際上還是在Windows下先安裝了一個Linux環境,然后在這個系統中運行的docker。也就是說,服務中使用的localhost指的是這個Linux環境的地址,而不是我們的宿主環境Windows。我們可以通過命令:
找到這個Linux的ip地址,一般情況下這個地址是192.168.99.100,然后在Windows的瀏覽器中,輸入這個地址,加上服務的端口即可啟用了。
1、在安裝Docker的時候,會在宿主機安裝一個虛擬網關 docker0,查詢docker0的IP地址
2、配置docker上安裝的nginx
3、自行測試即可
目前,市面上支持 Docker 鏡像存儲的主流數據倉庫主要有以下 4 種:
這里,我們將選用 Nexus3 作為數據倉庫,因為 Nexus3 支持非常多的倉庫類型,例如: maven 、 docker 、 yum 、 apt 、 npm 、 ruby 、 gems 、 pypi 等
在 Nexus3 支持 3 種 Docker 倉庫:
這里,我們將采用 Docker 的形式安裝 Nexu3,這樣可以減少很多不必要的麻煩,并且也方便以后的遷移工作
步驟大致如下:
代理倉庫(docker-proxy)
聚合倉庫(docker-group)
由于,三種倉庫支持的功能都不太完美:
故使用 Nginx 進行代理:通過請求方式的不同,代理到不同的倉庫,從而實現倉庫操作上的統一,具體配置如下:
到這里,基本上就完成了 Nexus3 的搭建工作和 Nginx 的代理工作
參考:
買粉絲s://help.sonatype.買粉絲/repomanager3
買粉絲s://github.買粉絲/docker/docker-registry
買粉絲s://zhang.ge/5139.買粉絲
簡述:Spring boot+Vue 前后端分離項目部署,主要采用docker容器部署方式。
Springboot項目部署:docker構建mysql環境+docker構建項目自身環境。
Vue項目:使用docker啟動nginx服務器方式代理部署。
項目使用mysql8.0作為數據源,所以部署時需要使用docker構建mysql環境及項目自身環境。
連接出現1251錯誤時:
首先將項目進行打包:mumu-0.0.1-SNAPSHOT.jar
到此,springboot項目采用docker方式運行部署結束。
使用docker容器方式運行nginx服務器。
對于nginx服務器,重要的兩個操作是:
所以我們在配置啟動nginx容器的時候,需要將對應的目錄及文件進行宿主機掛載,方便后續更新資源及操作
啟動命令: