建立dockerfile檔案
copy 好像只支援先對路徑《當前相對路徑,目錄絕對路徑》
from centos
copy test_folder/ /home/test_folder
copy test_file.sh /home/
執行命令
docker build -t custom/middleground .
「custom/middleground」 是映象名稱,自己定義任意名稱,例如test_image
docker build -t test_image .
「.」 指明dockerfile檔案是在當前目錄
執行命令
存在 「custom/middleground」 說明建立成功
開始執行容器的時候要啟動自己的應用,就寫在這個指令碼裡面了
vi start.sh
內容:
#!/bin/bash
#執行自己的應用
nohup ./test &
# 下面這句是作用是:因為上面我是用nohup 執行的,docker 容器執行的時候,如果這個cmd執行完成後,
# 指令碼就會退出,docker會把當前映象stop掉 ,你會發現docker 啟動容器,一會兒容器就會自己退出,
# 加下面的命令就,防止指令碼退出了
tail -f /dev/null
建立檔案
vim stack.yml
內容:
version: '3.1'
services:
service:
image: custom/middleground # 指定上面的映象名稱
command: /home/start.sh # 開始映象的時候執行指令碼
ports: # 容器對外暴露的埠
- 18011:18001
- 18013:8889
- 18012:18002
退出編輯,執行
docker stack deploy -c stack.yml middleground
「middleground」 是容器的名稱,可以自己改
「stack.yml」 是剛配置的檔名
終端執行:
發現建立好了
終端執行
docker ps
如果發現容器執行一會兒就退出,是因為start.sh 這個指令碼直接執行完成就退出了。重新看卡第2步配置。
docker ps 命名看不到 這個映象對外暴露的介面的,用netstat 是看到是有的
[root@cdh1003 build_image]# netstat -apn |grep 18011
tcp6 0 0 :::18011 :::* listen 23640/dockerd
或者使用
# docker service ls
id name mode replicas image ports
3mf15ztm0sa7 middleground_service replicated 1/1 custom/middleground:latest *:18011-18012->18001-18002/tcp, *:18013->8889/tcp
結束 使用docker stack部署微服務遇到的坑
warning ipv4 forwarding is disabled.networking will not work.在使用docker stack構建啟動微服務的時候,所有的從節點機器專案全部啟動失敗,錯誤資訊是服務無法註冊到遠端的nacos伺服器上,但是我單獨在 從節點上又可以ping通遠端...
docker stack相關命令
部署專案命令 docker stack c docker compose.yml 服務名稱 顯示stack列表 命令 docker stack ls 可以看到名稱叫ormis service的stack中存在3個服務 列出stack中的任務 命令 docker stack ps stack名稱 通過...
postgrepsql簡單部署
2 解壓 tar xvf postgresql 10.0.tar.bz2 3 安裝 cd postgresql 10.0 configure prefix crmp sgwadm work zhangtaoa pg pghome make make install 4 建立data目錄 mkdir ...