SlideShare a Scribd company logo
使用octopus deploy
做自動部署
By Alan Tsai 2018-01-18
快速上手
關於我
2
▰Alan Tsai 蔡孟玹
▰後端工程師
▻Web Developer - Asp .Net Mvc
http://blog.alantsai.net
http://fb.alantsai.net
http://ln.alantsai.net
http://twitter.alantsai.net
http://ss.alantsai.net
contact@alantsai.net
http://gitter.alantsai.net
Agenda
3
Agenda
4
▰什麼是自動部署
▻傳統部署的問題
▰Octopus Deploy
▻架構介紹
▻環境需求
▻設定
▰日常使用
▰結語
什麼是自動部署
從修改到部署
5
修改到部署會經過的步奏
6
需求
開發
建制測試
部署
Continues Integration
7
需求
開發
建制測試
部署
Continuous Delivery
8
需求
開發
建制測試
部署
部署有什麼難?
9
▰不同環境
▻Testing
▻Production
▰不同設定
▰多台機器
▰每次部署是否一致?
▻裝在哪裡
▻權限設定
▰目前最新在那一版?
▻退板
▰部署是否需要授權?
▻手動通過?
▻部署通知
Continuous Delivery vs Continous Deployment
10
解決方案
11
▰Release Management / Continuous Delivery (Deployment)
System
▰Continues Integration(CI)直接發佈上去
Octopus Deploy
架構介紹
12
架構介紹
13
MSSQL
Octopus Server
Tentacle Calamari
Server
Tentacle Calamari
Server
Tentacle Calamari
Server
資安
14
▰Octopus Server存在DB的資訊有加密
▻所以備份也需要包含Master Key
▰Tentacle有兩種模式
▻Listening
▻需要特定的Octopus 資訊才有
▻Pulling
▰Octopus 和 Tentacle
▻全程用SSL加密
Octopus Server
15
▰Microsoft Sql Server
▻2008 +
▻Express +
▰.Net Framework
▻Octopus 3.0.0 ~ 3.3.27 = 4.5 +
▻Octopus 3.4 = 4.5.1 +
▰Windows Server
▻2008 SP2 +
Deployment Target
16
▰Windows - Tentacle
▰Server version
▻2003 SP2 +
▰.Net Framework
▻Tentacle 3.0 => 4.0+
▻Tentacle 3.1 => 4.5+
▰Powershell
▻2.0 +
▰Port 10933
▰Linux
▰SSH
▰Calamari
▻Mono
▻.Net Core
License
17
▰Community版本
▻5臺機器免費(2018/01/18)
▻隨時有可能變動
▰安裝一定要License Key
▻https://octopus.com/licenses/trial
▻試用45天,之後變Community
▰https://octopus.com/purchase
Octopus Deploy – 安裝
18
下載
19
▰https://octopus.com/downloads
▰Octopus Deploy Server
▻4.1.9 – x64
▰Tentacle
▻3.16.3 - x64
Octopus Deploy – 安裝
Server
20
Octopus Server
21
Octopus Server
22
Octopus Server
23
▰DB 可以先建立或者直接打 – 不存在會問是否建立
Octopus Server
24
Octopus Server
25
Octopus Server
26
Octopus Server
27
Octopus Server
28
Octopus Server
29
Octopus Deploy – 安裝
Tentacle
30
Tentacle
31
Tentacle
32
Tentacle
33
Tentacle
34
▰回到Octopus Server – 建立Environment
Tentacle
35
Tentacle
36
Tentacle
37
Tentacle
38
Tentacle
39
Tentacle
40
Tentacle – 測試連線
41
Tentacle
42
Tentacle
43
Octopus Deploy
設定介紹
44
設定架構
45
▰架構方面
▰Infrastructure
▻Environment
▻Deployment Target
▰Library
▻Package
▻Variable
▻Scripts
▰專案方面
▰Project
▻Process Step
▻Release
▰Deploy
Octopus Deploy – 設定
架構
46
Environment
47
▰定義環境架構
▰常見的有
▻Testing
▻Production
▰一台機器可以在多個Environment
▰主要用於更新流程
▰參考文件
▰https://octopus.com/docs/infrastructure
/environments
Deployment Target
48
▰可以被部署的機器
▰Windows – 有裝 Tentacle的機器
▰Server Role
▻定義某一個Target的角色
▻例如
▻Web-Server
▻DB
▻Service
▰參考文件
▰Windows Deployment Target
▻https://octopus.com/docs/infrastructure/windo
ws-targets
▰Linux (SSH)
▻https://octopus.com/docs/infrastructure/ssh-
targets
▰其他Target
▻https://octopus.com/docs/infrastructure
Package
49
▰可更新的程式
▰不同格式
▻Nuget
▻Tar、Zip
▻Docker Image
▻JAR、WAR、EAR、RAR
▰Package Id + Version組成
▰例如:
▰SimpleAspNetMvcApp.1.1.1.nupkg
▻Package Id = SimpleAspNetMvcApp
▻版本 = 1.1.1
▻格式 = nuget
.Net Package做法 - OctoPack
50
▰.Net 程式
▻可以使用 OctoPack
▻MSbuildTask產生nuget package
▻也可以用nuget.exe產生
▻或者Octo.exe
▰參考文件
▰建立package的參考資料
▻https://octopus.com/docs/packaging-applications
▰支援的格式
▻https://octopus.com/docs/packaging-
applications/supported-packages
▰OctoPack
▻https://octopus.com/docs/packaging-
applications/creating-packages/nuget-packages/using-
octopack
Package
51
Octopus Deploy – 設定
專案
52
Project
53
▰一組設定用來代表最後部署的資訊
▰共用從架構設定的內容
▰參考資料
▻https://octopus.com/docs/deployment-process/projects
Process
54
▰Step
▻發佈的時候執行的步奏
▻例如
▻需要人工審核才能繼續
▻寄信
▰可以做Rolling Update
▻一台一台更新而不是一次更新
▰參考資料
▻https://octopus.com/docs/deployment-process/steps
Release
55
▰定義一個要發佈的Snapshot
▰會記錄
▻那些process會執行
▻那個package版本會使用
▻那些Environment參數
▰參考資料
▻https://octopus.com/docs/deployment-process/releases
實際Deploy
56
▰預設是一個Environment到另外一個
▰只有上一個ok之後才能夠往下
Deploy執行結果
57
測試 出錯 避免 發佈到正式
58
variable
59
▰定義參數值替換
▰同一個key能夠定義不同層級(scope)的
值
▻例如依照Environment不同給予不同的值
▰可以自動替換config裡面的值:
▻Appsetting
▻connectionstring
▰參考文件
▰https://octopus.com/docs/deployment-
process/variables
日常使用
60
更版動作
61
git tag
建制
Package
上傳
建立
Release
發佈
發佈動作
62
Deploy
Testing
測試
Deploy
Production
Demo
63
▰V1.0.0
▻發佈有問題
▻Block Production
▰V1.1.0
▻修正問題
▰V1.1.1
▻參數設定修改
▻第一次部署沒有設定Variable
▻退板
▻第二次部署有設定Variable
▻Testing和Production不同
結語
64
結語
65
▰Continues Delivery能做就做
▰最好結合CI一起做
▻直接CI Package完自動上CD
▻人只需要手動Deploy就好
▻甚至都別手動直接Continues Deployment
▰有時候只是要管理正式機器的上版流程
▻這個時候Octopus Deploy就很適合
▻因為環境關係不一定能夠做整套
參考資料
66
▰官方Getting Started
▻https://octopus.com/docs/getting-started
▰用Docker測試Octopus Deploy功能
▻只想測試功能可以用我build的Docker image
▻https://hub.docker.com/r/alantsai/octopus-tentacle/
▰整個DevOps介紹
▻部落格系列:從.Net工程師的角度來看DevOps
67
Q&A
感謝大家
CREDITS
Special thanks to all the people who made and
released these awesome resources for free:
▰ Presentation template by SlidesCarnival
▰ Photographs by Startup Stock Photos
68

More Related Content

What's hot

うちのRedmineの使い方
うちのRedmineの使い方うちのRedmineの使い方
うちのRedmineの使い方
Tomohisa Kusukawa
 
02 書いてから考えよう
02 書いてから考えよう02 書いてから考えよう
02 書いてから考えよう
nishio
 
エンジニアのプレゼン資料作成/入門
エンジニアのプレゼン資料作成/入門エンジニアのプレゼン資料作成/入門
エンジニアのプレゼン資料作成/入門
iKenji
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
 
AndroidとSELinux
AndroidとSELinuxAndroidとSELinux
AndroidとSELinux
android sola
 
Zynq VIPを利用したテストベンチ
Zynq VIPを利用したテストベンチZynq VIPを利用したテストベンチ
Zynq VIPを利用したテストベンチ
Mr. Vengineer
 
Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!
Etsuji Nakai
 
AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発AimingStudy
 
安定したネットワークを提供するためのラック内環境を考えてみる
安定したネットワークを提供するためのラック内環境を考えてみる安定したネットワークを提供するためのラック内環境を考えてみる
安定したネットワークを提供するためのラック内環境を考えてみる
Tomohiro Sakamoto(Onodera)
 
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢
Naoyuki Yamada
 
How to Install Configure and Use sysstat utils on RHEL 7
How to Install Configure and Use sysstat utils on RHEL 7How to Install Configure and Use sysstat utils on RHEL 7
How to Install Configure and Use sysstat utils on RHEL 7
VCP Muthukrishna
 
eBPFは何が嬉しいのか
eBPFは何が嬉しいのかeBPFは何が嬉しいのか
eBPFは何が嬉しいのか
Yutaro Hayakawa
 
LIFFとの連携でさらに強力に。こんなに使えるLINEログイン
LIFFとの連携でさらに強力に。こんなに使えるLINEログインLIFFとの連携でさらに強力に。こんなに使えるLINEログイン
LIFFとの連携でさらに強力に。こんなに使えるLINEログイン
Naohiro Fujie
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
Masaru Oki
 
你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發
志龍 陳
 
A5 SQL Mk-2の便利な機能をお教えします
A5 SQL Mk-2の便利な機能をお教えしますA5 SQL Mk-2の便利な機能をお教えします
A5 SQL Mk-2の便利な機能をお教えします
ester41
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコシステムズ合同会社
 
[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld
[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld
[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld
CODE BLUE
 
あなたのところに専用線が届くまで
あなたのところに専用線が届くまであなたのところに専用線が届くまで
あなたのところに専用線が届くまで
Tomohiro Sakamoto(Onodera)
 

What's hot (20)

うちのRedmineの使い方
うちのRedmineの使い方うちのRedmineの使い方
うちのRedmineの使い方
 
02 書いてから考えよう
02 書いてから考えよう02 書いてから考えよう
02 書いてから考えよう
 
エンジニアのプレゼン資料作成/入門
エンジニアのプレゼン資料作成/入門エンジニアのプレゼン資料作成/入門
エンジニアのプレゼン資料作成/入門
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
 
AndroidとSELinux
AndroidとSELinuxAndroidとSELinux
AndroidとSELinux
 
Zynq VIPを利用したテストベンチ
Zynq VIPを利用したテストベンチZynq VIPを利用したテストベンチ
Zynq VIPを利用したテストベンチ
 
Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!
 
AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発
 
安定したネットワークを提供するためのラック内環境を考えてみる
安定したネットワークを提供するためのラック内環境を考えてみる安定したネットワークを提供するためのラック内環境を考えてみる
安定したネットワークを提供するためのラック内環境を考えてみる
 
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢
 
How to Install Configure and Use sysstat utils on RHEL 7
How to Install Configure and Use sysstat utils on RHEL 7How to Install Configure and Use sysstat utils on RHEL 7
How to Install Configure and Use sysstat utils on RHEL 7
 
eBPFは何が嬉しいのか
eBPFは何が嬉しいのかeBPFは何が嬉しいのか
eBPFは何が嬉しいのか
 
LIFFとの連携でさらに強力に。こんなに使えるLINEログイン
LIFFとの連携でさらに強力に。こんなに使えるLINEログインLIFFとの連携でさらに強力に。こんなに使えるLINEログイン
LIFFとの連携でさらに強力に。こんなに使えるLINEログイン
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
 
SSH力をつけよう
SSH力をつけようSSH力をつけよう
SSH力をつけよう
 
你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發
 
A5 SQL Mk-2の便利な機能をお教えします
A5 SQL Mk-2の便利な機能をお教えしますA5 SQL Mk-2の便利な機能をお教えします
A5 SQL Mk-2の便利な機能をお教えします
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
 
[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld
[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld
[CB16] WireGuard:次世代耐乱用性カーネルネットワークトンネル by Jason Donenfeld
 
あなたのところに専用線が届くまで
あなたのところに専用線が届くまであなたのところに専用線が届くまで
あなたのところに専用線が届くまで
 

Similar to 用Octopus deploy做自動部署 - 快速上手

Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Angular Conf 2018 - 原來 Angular 可以這樣玩設定Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Poy Chang
 
為瞬間巨量做好準備 20180726
為瞬間巨量做好準備 20180726為瞬間巨量做好準備 20180726
為瞬間巨量做好準備 20180726
Earou Huang
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous delivery
Qiao Liang
 
使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)
Max Lai
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Chen Cheng-Wei
 
Is it really easy for companies to import Ansible automation
Is it really easy for companies to import Ansible automationIs it really easy for companies to import Ansible automation
Is it really easy for companies to import Ansible automation
Chu-Siang Lai
 
110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass
Zoom Quiet
 
Continuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CIContinuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CI
Chu-Siang Lai
 
前端工程师的软件库
前端工程师的软件库前端工程师的软件库
前端工程师的软件库
putaoshu
 
電子內容管理 使用Git 與 github 1
電子內容管理   使用Git 與 github 1電子內容管理   使用Git 與 github 1
電子內容管理 使用Git 與 github 1
Alan Tsai
 
twMVC#29 -Learning Machine Learning with Movie Recommendation
twMVC#29 -Learning Machine Learning with Movie RecommendationtwMVC#29 -Learning Machine Learning with Movie Recommendation
twMVC#29 -Learning Machine Learning with Movie Recommendation
Mia Chang
 
twMVC#29 | 從電影推薦預測開始學機器學習
twMVC#29 | 從電影推薦預測開始學機器學習twMVC#29 | 從電影推薦預測開始學機器學習
twMVC#29 | 從電影推薦預測開始學機器學習
twMVC
 
Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔
yinwilliam
 
Git安裝
Git安裝Git安裝
Git安裝
Hong Da Lin
 
互联网持续交付整形记
互联网持续交付整形记互联网持续交付整形记
互联网持续交付整形记
Ryan YU
 
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
TIM WANG
 
Top100summit 游戏中的自动化测试 - 金山 - 白银祖
Top100summit 游戏中的自动化测试 - 金山 - 白银祖Top100summit 游戏中的自动化测试 - 金山 - 白银祖
Top100summit 游戏中的自动化测试 - 金山 - 白银祖drewz lin
 
Testing in Production, Deploy on Fridays
Testing in Production, Deploy on FridaysTesting in Production, Deploy on Fridays
Testing in Production, Deploy on Fridays
Yi-Feng Tzeng
 
极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)
Will Huang
 
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B serviceHow to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B service
Alex Su
 

Similar to 用Octopus deploy做自動部署 - 快速上手 (20)

Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Angular Conf 2018 - 原來 Angular 可以這樣玩設定Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Angular Conf 2018 - 原來 Angular 可以這樣玩設定
 
為瞬間巨量做好準備 20180726
為瞬間巨量做好準備 20180726為瞬間巨量做好準備 20180726
為瞬間巨量做好準備 20180726
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous delivery
 
使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
 
Is it really easy for companies to import Ansible automation
Is it really easy for companies to import Ansible automationIs it really easy for companies to import Ansible automation
Is it really easy for companies to import Ansible automation
 
110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass
 
Continuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CIContinuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CI
 
前端工程师的软件库
前端工程师的软件库前端工程师的软件库
前端工程师的软件库
 
電子內容管理 使用Git 與 github 1
電子內容管理   使用Git 與 github 1電子內容管理   使用Git 與 github 1
電子內容管理 使用Git 與 github 1
 
twMVC#29 -Learning Machine Learning with Movie Recommendation
twMVC#29 -Learning Machine Learning with Movie RecommendationtwMVC#29 -Learning Machine Learning with Movie Recommendation
twMVC#29 -Learning Machine Learning with Movie Recommendation
 
twMVC#29 | 從電影推薦預測開始學機器學習
twMVC#29 | 從電影推薦預測開始學機器學習twMVC#29 | 從電影推薦預測開始學機器學習
twMVC#29 | 從電影推薦預測開始學機器學習
 
Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔
 
Git安裝
Git安裝Git安裝
Git安裝
 
互联网持续交付整形记
互联网持续交付整形记互联网持续交付整形记
互联网持续交付整形记
 
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
 
Top100summit 游戏中的自动化测试 - 金山 - 白银祖
Top100summit 游戏中的自动化测试 - 金山 - 白银祖Top100summit 游戏中的自动化测试 - 金山 - 白银祖
Top100summit 游戏中的自动化测试 - 金山 - 白银祖
 
Testing in Production, Deploy on Fridays
Testing in Production, Deploy on FridaysTesting in Production, Deploy on Fridays
Testing in Production, Deploy on Fridays
 
极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)
 
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B serviceHow to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B service
 

More from Alan Tsai

初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
Alan Tsai
 
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
Alan Tsai
 
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
Alan Tsai
 
初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想
初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想
初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想
Alan Tsai
 
Microsoft Learn AI 挑戰賽-實戰三 MLOps | Alan Tsai
Microsoft Learn AI 挑戰賽-實戰三 MLOps | Alan TsaiMicrosoft Learn AI 挑戰賽-實戰三 MLOps | Alan Tsai
Microsoft Learn AI 挑戰賽-實戰三 MLOps | Alan Tsai
Alan Tsai
 
2021 Net Conf Taiwan-初探 Azure Communication Service 讓 App 也有視訊、通話、即時聊天、簡訊和電話功能
2021 Net Conf Taiwan-初探 Azure Communication Service讓 App 也有視訊、通話、即時聊天、簡訊和電話功能2021 Net Conf Taiwan-初探 Azure Communication Service讓 App 也有視訊、通話、即時聊天、簡訊和電話功能
2021 Net Conf Taiwan-初探 Azure Communication Service 讓 App 也有視訊、通話、即時聊天、簡訊和電話功能
Alan Tsai
 
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Alan Tsai
 
我和阿九(Azure)有約 17 Azure Sql Database 基本介紹
我和阿九(Azure)有約 17 Azure Sql Database 基本介紹我和阿九(Azure)有約 17 Azure Sql Database 基本介紹
我和阿九(Azure)有約 17 Azure Sql Database 基本介紹
Alan Tsai
 
不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...
不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...
不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...
Alan Tsai
 
架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務
架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務
架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務
Alan Tsai
 
我和阿九Azure有約 39 Azure Blob Storage 如何省錢? 設定 Access Tier 以及透過 Lifecycle Managem...
我和阿九Azure有約 39 Azure Blob Storage 如何省錢?設定 Access Tier 以及透過 Lifecycle Managem...我和阿九Azure有約 39 Azure Blob Storage 如何省錢?設定 Access Tier 以及透過 Lifecycle Managem...
我和阿九Azure有約 39 Azure Blob Storage 如何省錢? 設定 Access Tier 以及透過 Lifecycle Managem...
Alan Tsai
 
我和阿九Azure有約 38 Azure Blob Storage 如何省錢? 搞懂Access Tier (Alan Tsai 的學習筆記)
我和阿九Azure有約 38 Azure Blob Storage 如何省錢?搞懂Access Tier (Alan Tsai 的學習筆記)我和阿九Azure有約 38 Azure Blob Storage 如何省錢?搞懂Access Tier (Alan Tsai 的學習筆記)
我和阿九Azure有約 38 Azure Blob Storage 如何省錢? 搞懂Access Tier (Alan Tsai 的學習筆記)
Alan Tsai
 
我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...
我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...
我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...
Alan Tsai
 
我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)
我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)
我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)
Alan Tsai
 
我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)
我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)
我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)
Alan Tsai
 
我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...
我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...
我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...
Alan Tsai
 
我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...
我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...
我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...
Alan Tsai
 
我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)
我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)
我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)
Alan Tsai
 
Azure Taiwan - Keep azure cost down (Azure 成本管控)
Azure Taiwan - Keep azure cost down (Azure 成本管控)Azure Taiwan - Keep azure cost down (Azure 成本管控)
Azure Taiwan - Keep azure cost down (Azure 成本管控)
Alan Tsai
 
我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)
我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)
我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)
Alan Tsai
 

More from Alan Tsai (20)

初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
 
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
 
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
 
初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想
初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想
初探 Data API Builder:在幾分鐘內將資料庫轉換成 REST 和 GraphQL 不再是夢想
 
Microsoft Learn AI 挑戰賽-實戰三 MLOps | Alan Tsai
Microsoft Learn AI 挑戰賽-實戰三 MLOps | Alan TsaiMicrosoft Learn AI 挑戰賽-實戰三 MLOps | Alan Tsai
Microsoft Learn AI 挑戰賽-實戰三 MLOps | Alan Tsai
 
2021 Net Conf Taiwan-初探 Azure Communication Service 讓 App 也有視訊、通話、即時聊天、簡訊和電話功能
2021 Net Conf Taiwan-初探 Azure Communication Service讓 App 也有視訊、通話、即時聊天、簡訊和電話功能2021 Net Conf Taiwan-初探 Azure Communication Service讓 App 也有視訊、通話、即時聊天、簡訊和電話功能
2021 Net Conf Taiwan-初探 Azure Communication Service 讓 App 也有視訊、通話、即時聊天、簡訊和電話功能
 
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
 
我和阿九(Azure)有約 17 Azure Sql Database 基本介紹
我和阿九(Azure)有約 17 Azure Sql Database 基本介紹我和阿九(Azure)有約 17 Azure Sql Database 基本介紹
我和阿九(Azure)有約 17 Azure Sql Database 基本介紹
 
不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...
不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...
不會 Javascript 沒關係,用 Blazor 來解決前端需求 - 成為 Full Stack .NET 開發者吧 - .NET Conf 2020...
 
架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務
架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務
架構這件事 - Azure 可以幫助什麼 - 如何選擇使用什麼 Azure 服務
 
我和阿九Azure有約 39 Azure Blob Storage 如何省錢? 設定 Access Tier 以及透過 Lifecycle Managem...
我和阿九Azure有約 39 Azure Blob Storage 如何省錢?設定 Access Tier 以及透過 Lifecycle Managem...我和阿九Azure有約 39 Azure Blob Storage 如何省錢?設定 Access Tier 以及透過 Lifecycle Managem...
我和阿九Azure有約 39 Azure Blob Storage 如何省錢? 設定 Access Tier 以及透過 Lifecycle Managem...
 
我和阿九Azure有約 38 Azure Blob Storage 如何省錢? 搞懂Access Tier (Alan Tsai 的學習筆記)
我和阿九Azure有約 38 Azure Blob Storage 如何省錢?搞懂Access Tier (Alan Tsai 的學習筆記)我和阿九Azure有約 38 Azure Blob Storage 如何省錢?搞懂Access Tier (Alan Tsai 的學習筆記)
我和阿九Azure有約 38 Azure Blob Storage 如何省錢? 搞懂Access Tier (Alan Tsai 的學習筆記)
 
我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...
我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...
我和阿九Azure有約 37 Azure Blob Storage 如何檔案異動自動記錄建立檔案版本?Version Preview (Alan Tsai...
 
我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)
我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)
我和阿九Azure有約 36 Azure Blob Storage 如何開啟snapshot保留目前狀態 (Alan Tsai的學習筆記)
 
我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)
我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)
我和阿九Azure有約 35 Azure Blob Storage 如何開啟 Soft Delete?避免誤刪檔案 (Alan Tsai的學習筆記)
 
我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...
我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...
我和阿九Azure有約 34 Azure File Storage 什麼時候適合用Azure File? File vs Disk Storage (Al...
 
我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...
我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...
我和阿九Azure有約 33 Azure File Storage 什麼時候適合用Azure File? File vs Blob (Alan Tsai的...
 
我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)
我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)
我和阿九Azure有約 32 Azure File Storage 介紹 (Alan Tsai的學習筆記)
 
Azure Taiwan - Keep azure cost down (Azure 成本管控)
Azure Taiwan - Keep azure cost down (Azure 成本管控)Azure Taiwan - Keep azure cost down (Azure 成本管控)
Azure Taiwan - Keep azure cost down (Azure 成本管控)
 
我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)
我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)
我和阿九(Azure)有約 31 Azure Blob Storage 使用azcopy進行自動化作業 (Alan Tsai 的學習筆記)
 

用Octopus deploy做自動部署 - 快速上手

Editor's Notes

  1. https://puppet.com/blog/continuous-delivery-vs-continuous-deployment-what-s-diff
  2. http://www.rlslog.net/release-management-for-visual-studio-2013-with-update-2-iso-tbe/
  3. https://www.iconfinder.com/icons/185097/database_streamline_icon#size=128 https://www.iconfinder.com/icons/314728/package_icon#size=128 https://www.iconfinder.com/icons/68734/blue_gear_icon#size=64 https://www.iconfinder.com/icons/1016081/design_ui_ux_web_web_design_icon#size=128
  4. https://octopus.com/docs/deployment-process/steps