Dockerfile構建nginx
建立一個文件夾
mkdir -p /nginx
進入建立的目錄
cd /nginx
建立並編輯 添加下面兩行
vim Dockerfile
行1,去本地找基礎的鏡像
FROM nginx
行2,把<h1>I'm index.html...</h1>寫到 /usr/share/nginx/html/index.html文件中
RUN echo "<h1>I'm index.html...</h1>" > /usr/share/nginx/html/index.html
構建鏡像 nginx表明鏡像名稱 taopanfeng至關於版本號 .表明當前目錄
docker build -t nginx:taopanfeng .
運行容器
docker run --name nginx_01 -p 91:80 -d nginx:taopanfeng
Windows訪問 192.168.1.3:91 就能夠顯示咱們往index.html中寫入的內容了
Dockerfile構建springboot項目
部署
mkdir -p /app/test
cd /app/test
1,spring快速建立項目
2,添加web啓動器
3,在application.properties中添加server.port=8101
4,在Controller建立一個方法 GetMapping("hello")返回 I'm hello...
5,直接maven clear package
6,把target中的jar包傳到 /app/test
vim Dockerfile
###
# 基於java:8 這個鏡像
FROM java:8
# 將本地文件夾掛載到容器的/tmp
VOLUME /tmp
# 把這個jar添加到容器的根目錄 並更名爲 app.jar
ADD demo-0.0.1-SNAPSHOT.jar /app.jar
# 向外暴露8101 也就是Docker容器的端口爲8101
EXPOSE 8101
# 配置容器啓動後執行 java -jar /app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
###
建立鏡像 test鏡像名 0.0.1版本號 .表明當前目錄
docker build -t test:0.0.1 .
執行容器端口8101 Linux端口8102 容器名稱 test01
docker run --name test01 -p 8102:8101 -d test:0.0.1
這裏test01就是咱們剛纔啓動的名稱,顯示出信息IPAddress對應就是容器ip
docker inspect test01
Linux---訪問 返回I'm hello...
這裏表示Linux訪問容器的ip和端口 由於那個jar是在容器中執行的
curl 172.17.0.4:8101/hello
Windows---瀏覽器訪問 返回I'm hello...
這裏表示Windows訪問Linux的ip和端口
由於Windows不能訪問容器 須要經過Linux的ip加上docker run中的-p代理的端口訪問
192.168.1.3:8102/hello