其官網ID:a...e8086, 密碼a..e1..6
https://hub.docker.com/
sign in and download install
結果裝不起來
https://skychang.github.io/2017/01/06/Docker-Docker_for_Windows_10_First/
另一種方式安裝https://blog.yowko.com/homebrew-docker/
http://www.voidcn.com/article/p-sfwzrmph-ew.html docker 打包 node 项目
https://joshhu.gitbooks.io/dockercommands/content/Containers/DockerRun.html 快速建立你的第一個Docker服務
https://yeasy.gitbooks.io/docker_practice/
https://www.youtube.com/watch?v=k5iwKUZY9tk 前端工程師一定要知道的 Docker 虛擬化容器技巧 (18:34)
https://www.arthurtoday.com/2009/12/host-guest.html .Host OS 和 Guest OS 是什麼 ?
有像git,但是用在打包OS(operation system, 作業系統)
*12招給前端的密技
- pull
- images (映像檔)
- run
- ps (看行程)
- stop
- start
- exec (進入容器,與run的差別在run會自動開啟來)
- commit (提交image)
- tag (修改標籤名稱)
- rmi (移除image和tag,remove image的縮寫)
- rm (移除容器)
- push
Drone
如果你曾經開發過需要經常更新版本的應用程式(如 API Service),每次把寫完的 code push 到 Git 後,通常還需要做以下這些事情:
- 將修改後的 Release 版本打包完成
- 連線到 Host VM 並停止原有服務
- 覆蓋原有的程式版本
- 重新啟動服務
其實一直以來我都是認命的這樣部署我的 Service 的,直到有一天因為專案有臨時的緊急需求,一整天重複做了快十次這樣的流程後,心裡突然有一個聲音告訴我:
John啊,你一定要做自動部署,你如果現在不出來做,連天公伯都不會原諒你!
剛好團隊近期也導入 Docker 做容器服務管理,在尋找了一些資料以及自動部署流程的教學後,便決定使用 Drone 這套服務來搭配之前已經建置在 Docker 上的 Gitea 版本控制系統來建立一套簡易的 Continuous Delivery 流程。
為什麼選擇Drone?
- 佔用記憶體資源少(僅約20MB)
- 所有建置環境皆在 Docker 上實作,避免與系統互相干擾
- 有多樣 Plugin 可供串接服務
- 可與各種版本控制系統快速串接(GitHub、GitLab、Gitea、Gogs、Bitbucket 等)
- 以簡易撰寫 yaml 檔案的方式定義部署流程
以下會詳細介紹從安裝 Docker 到將 Drone 執行為 Docker Container 提供未來部署使用的流程。
https://medium.com/asiayo-engineering/%E7%94%A8-drone-%E6%89%93%E9%80%A0-ci-cd-flow-36b9d14c7620 用 Drone 打造 CI/CD flow
ref:https://medium.com/@stu60610/%E4%BD%BF%E7%94%A8-docker-drone-%E5%BB%BA%E7%AB%8B%E7%B0%A1%E6%98%93%E8%87%AA%E5%8B%95%E9%83%A8%E7%BD%B2%E6%B5%81%E7%A8%8B-part1-a180eb48ff37
webhook
https://ithelp.ithome.com.tw/articles/10193212 第四天:認識 Webhook
Webhook 是讓一個網站能訂閱另一個網站的方法
*上面那篇介紹了實際上是介紹了rails做後端與資料庫,有用到
- postman
- imgur
學會怎麼把圖檔弄到 imgur
- imgur 有提供 api,這是說明文件:https://apidocs.imgur.com/#4b8da0b3-3e73-13f0-d60b-2ff715e8394f。使用 api 需要 Client-ID,這東西就跟 Line channel secret 那些東西差不多。你可以透過這個網址:https://api.imgur.com/oauth2/addclient 取得你的 Client-ID。照著填就可以。
- heroku(server)
- 連結line
- 連結氣象
去氣象局取氣象圖
uri = URI('http://www.cwb.gov.tw/V7/js/HDRadar_1000_n_val.js')
response = Net::HTTP.get(uri)
start_index = response.index('","') + 3
end_index = response.index('"),') - 1
"http://www.cwb.gov.tw" + response[start_index..end_index]
end
把氣象圖丟上imgur(那為什麼不是我們自己保存圖片就好呢?因為存圖片要占空間跟頻寬,所以我選擇用 imgur 的空間放圖。imgur 有一個蠻好的地方是,你可以直接把圖片網址給他,他就會幫你備份圖片了,所以我們不用真的把圖檔抓回來再上傳到 imgur。而且作者當時的氣象圖網址是http開頭,而line要求https,imgur提供的是https,現在的話氣象局已經改成https)
def upload_to_imgur(image_url)
url = URI("https://api.imgur.com/3/image")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = 'Client-ID be2d83405627ab8'
request.set_form_data({"image" => image_url})
response = http.request(request)
json = JSON.parse(response.read_body)
begin
json['data']['link'].gsub("http:","https:")
rescue
nil
end
end
pipeline
https://docs.drone.io/configure/pipeline/
k8s
not clear
沒有留言:
張貼留言