DevOps課程-Jenkins 14
這邊首次嘗試使用Redhat Linux,使用yum指令安裝軟體(docker)
在啟動執行個體頁面上:
選擇特規的AWS OS image:
新增防火牆group設置:
預覽建立機台的規格內容:
上面這張圖關乎到連線,前面k8s課程已經有相關筆記了
後面連線不再重複筆記
沒多久狀態檢查完成後就可以連線了(連線方式不再重複撰寫)
簡單執行一些指令查看機台狀況:
#確認登入身分:
whoami#確認OS版本(先找ls /etc/*release):
cat /etc/os-release#查看記憶體大小:
free#查看cpu:
lscpu
接著更改host名稱
#先調整host檔設定:
sudo vi /etc/hosts
#修改連線顯示的名稱:
sudo hostnamectl set-hostname {指定的名稱,這邊就用docker}
#更新可安裝的套件(基本上Amazon Linux 2由此可判斷應該是redhat Linux的分支):
sudo yum update
#執行安裝docker:
sudo yum install docker
#簡單確認docker版本:
docker --version
#啟動docker服務的Daemon:
sudo service docker start
#確認docker服務狀態:
systemctl status docker
為了讓登入的ec2-user身分可以直接執行docker指令,前面不用帶sudo
這邊先將ec2-user加入docker的group
#將當前身分加入群組名docker內:
sudo usermod -aG docker $USER#確認當前身分的groups:
groups
重登在看一次groups:
#嘗試執行docker指令,起一個redis伺服器(此時就不需要sudo):
docker run redis
後面要嘗試在這台EC2的實例去跑docker-hub上我私人的image容器
所以首先要執行docker登入(後面才能從我私人的hub內拿到image)
#執行docker登入:
docker login
(過程要打帳密)#若是要登入其他的hub,則要提供位置與PORT:
docker login {host位置}:{PORT}
#登入完成後會有登入相關的檔案存在home目錄下:
ls $HOME/.docker/config.json
也就是當完成登入動作,一些docker指令會指向該docker hub
接著嘗試拉看看docker hub上私有庫的image:
#拉自己的image:
docker pull javapig/demo-app:jma-2.0
確認:
#嘗試執行看看上述拉到的image,並且驗證:
docker run -d -p 8083:8080 javapig/demo-app:jma-2.0#用curl驗證打到http GET->http://localhost:8083/hellopig2
curl -v http://localhost:8083/hellopig2
#然後關掉container:
docker stop {container id}
若還要驗證可以被外面打進去,則記得還要打開防火牆設置!