$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CloudGarageConcrete5TokyoMeetup#12
Search
MiyataAKiyoshi
October 20, 2017
Technology
0
88
CloudGarageConcrete5TokyoMeetup#12
Deploying Docker Container Images to CloudGarage
(Dkcer Hub)
MiyataAKiyoshi
October 20, 2017
Tweet
Share
More Decks by MiyataAKiyoshi
See All by MiyataAKiyoshi
2018.10#ssmjp-CloudGarageDevAssistProgram
miyataakiyoshi
0
41
CloudGarageRenewal2018.02
miyataakiyoshi
0
370
CloudGarageRancherMeetupTokyo#10
miyataakiyoshi
0
690
CloudGarageRancherMeetupFukuoka#2
miyataakiyoshi
0
500
CloudGarageRancherMeetupTokyo#9
miyataakiyoshi
0
380
CloudGarageServiceOutline
miyataakiyoshi
0
1.3k
Other Decks in Technology
See All in Technology
アプリにAIを正しく組み込むための アーキテクチャ── 国産LLMの現実と実践
kohju
0
110
OCI Oracle Database Services新機能アップデート(2025/09-2025/11)
oracle4engineer
PRO
1
220
Lookerで実現するセキュアな外部データ提供
zozotech
PRO
0
170
ExpoのインダストリーブースでみたAWSが見せる製造業の未来
hamadakoji
0
160
ハッカソンから社内プロダクトへ AIエージェント「ko☆shi」開発で学んだ4つの重要要素
sonoda_mj
5
680
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
7
1.6k
マイクロサービスへの5年間 ぶっちゃけ何をしてどうなったか
joker1007
17
6.8k
AI時代の新規LLMプロダクト開発: Findy Insightsを3ヶ月で立ち上げた舞台裏と振り返り
dakuon
0
260
生成AI時代におけるグローバル戦略思考
taka_aki
0
210
AWS re:Invent 2025~初参加の成果と学び~
kubomasataka
0
140
Identity Management for Agentic AI 解説
fujie
0
120
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
190
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
85
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
70
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
21
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
2
2.7k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
0
88
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.8k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
98
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Transcript
Copyright © NHN Techorus Corp. NHNテコラス株式会社 クラウドサービス開発室 宮田 晃佳 Dockerで構築したローカル開発環境から
クラウド環境へのデプロイ(Dcker Hub) Service Site Facebook Twitter https://cloudgarage.jp @CloudGarage.PR @CloudGarage_PR
Page 2 hashtag #CloudGarage ゴール (1) Docker Compose作成 KUSANAGI環境取得 Instance
(4)Local環境で編集 (5)Dockerイメージ作成 (7)サーバーインスタンスを 用意 (9) Docker Compose作成 Docker イメージ取得 (0) Local環境に Dockerインストール Prime Strategy Repository ,etc (2)Dokcer Hub アカウント作成 (3)リポジトリ作成 Your New Repository (6)Dokcerイメージ アップロード (8)サーバーインスタンスに Dockerインストール
Page 3 hashtag #CloudGarage ローカル環境構築
Page 4 hashtag #CloudGarage Dockerインストール https://www.docker.com/docker-mac https://www.docker.com/docker-windows ローカルにDockerを環境構築するには、以下を利用に
Page 5 hashtag #CloudGarage Docker + Concrete5環境構築 https://qiita.com/suin/items/f8d00e869bacf1a65bb4 version: '2'
services: kusanagi-data: container_name: kusanagi-data image: busybox restart: always stdin_open: true tty: true volumes: - /var/lib/mysql - /etc/nginx/conf.d - /etc/httpd/conf.d - /etc/kusanagi.d - /home/kusanagi command: /bin/sh kusanagi-nginx: container_name: kusanagi-nginx image: primestrategy/kusanagi-nginx:1.10.0-1 ~略~ volumes_from: - kusanagi-data ~略~ kusanagi-mariadb: container_name: kusanagi-mariadb image: mariadb:10.0.24 ~略~ volumes_from: - kusanagi-data ~略~ kusanagi-php7: container_name: kusanagi-php7 image: primestrategy/kusanagi-php7:7.0.6-1 ~略~ volumes_from: - kusanagi-data ~略~ docker-compose.yml 赤字は削除 PHPerイベントYYPHP#6の記事を参考に、一部修正 docker-compose.yml ・“ksanagi-data”はDocker管理外の ファイル置き場 ・3つのDocker環境が作成される kusanagi-nginx kusanagi-mariadb kusanagi-php7
Page 6 hashtag #CloudGarage Docker Hub準備
Page 7 hashtag #CloudGarage Docker Hub アカウント作成 Docker Hub(https://hub.docker.com/)にアクセスし、Sign Up作成
メールによる ユーザ認証を忘れずに
Page 8 hashtag #CloudGarage Docker Hub リポジトリ作成 Docker Hub内にリポジトリ作成、ローカル環境に作成したDockerの数だけ Enter
Name :リポジトリの名前 rep-kusanagi-nginx rep-kusanagi-mariadb rep-kusanagi-php7 (後で利用します) Short Description :説明文章(短い) Full Description :説明文章(長い) Visibility :PublicとPrivate Visibility Public :誰でも参照・使用可能 Private :制限した範囲の人が 参照・使用可能 無料利用は1つのみ
Page 9 hashtag #CloudGarage 一覧表示 3つのリポジトリが作成されている [アカウント名]/[リポジトリ名] と表示 今回は、 [アカウント名]/rep-kusanagi-nginx
[アカウント名]/ rep-kusanagi-mariadb [アカウント名]/ rep-kusanagi-php7
Page 10 hashtag #CloudGarage ここまでできたら、 ローカルで遊んでください
Page 11 Docker HubへのPush
Page 12 hashtag #CloudGarage Dockerコンテナをイメージ化 $docker login Username: [設定したユーザ名] Password:
[設定したパスワード] Login Succeeded Dockerにログイン Local環境 $docker commit kusanagi-nginx [アカウント名]/rep-kusanagi-nginx $docker commit kusanagi-mariadb [アカウント名]/rep-kusanagi-mariadb $docker commit kusanagi- php7 [アカウント名]/rep-kusanagi-php7 コンテナをイメージ化 Local環境 $docker push [アカウント名]/rep-kusanagi-nginx $docker push [アカウント名]/rep-kusanagi-mariadb $docker push [アカウント名]/rep-kusanagi-php7 DockerHubへPush
Page 13 サーバーインスタンスの準備
Page 14 サーバーインスタンス Service Site Facebook Twitter https://cloudgarage.jp @CloudGarage.PR @CloudGarage_PR
Page 15 サーバーインスタンスの準備 インスタンス :CPU 3Core メモリ 4GB SSD 150GB
OS :Ubuntu 16.04 64bit 接続許可ポート :22, 8080 インスタンス名 :Instance01 rootパスワード :内緒 インスタンスを作成
Page 16 hashtag #CloudGarage インスタンスで以下のコマンドを実行し、Dockerをインストール Dockerインストール # apt-get update #
apt-get install ¥ apt-transport-https ¥ ca-certificates ¥ curl ¥ software-properties-common # curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - # add-apt-repository ¥ "deb [arch=amd64] https://download.docker.com/linux/ubuntu ¥ $(lsb_release -cs) ¥ stable" # apt-get update # apt-get install docker-ce # docker info 【Tips:最新版のDockerがRancherに対応していない?!】 Dockerのインストール時にバージョンを指定してください # apt-get install docker-ce=<VERSION> 参考: https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/#install-using-the-repository
Page 17 hashtag #CloudGarage サーバーインスタンスへのデプロイ
Page 18 hashtag #CloudGarage Ymlの修正とサーバーへアップ version: '2' services: kusanagi-mariadb: container_name:
kusanagi-mariadb image: mariadb:10.0.24 →image: [アカウント名]/rep-kusanagi-mariadb environment: MYSQL_ROOT_PASSWORD: my-secret-pw MYSQL_USER: user MYSQL_PASSWORD: password MYSQL_DATABASE: wordpress kusanagi-nginx: container_name: kusanagi-nginx image: primestrategy/kusanagi-nginx:1.10.0-1 →image: [アカウント名]/rep-kusanagi-nginx environment: PROFILE: kusanagi FQDN: kusanagi.example.jp WPLANG: ja BCACHE: "off" FCACHE: "off" links: - kusanagi-php7:php - kusanagi-mariadb:mysql ports: - "80:80" - "443:443" kusanagi-php7: container_name: kusanagi-php7 image: primestrategy/kusanagi-php7:7.0.6-1 →image: [アカウント名]/rep-kusanagi-php7 links: - kusanagi-mariadb:mysql docker-compose.ymlの修正
Page 19 hashtag #CloudGarage サーバーへデプロイ $docker login Username: [設定したユーザ名] Password:
[設定したパスワード] Login Succeeded サーバーでDockerにログイン $docker-compose up -d Ymlを使う
Page 20 hashtag #CloudGarage おまけ
Page 21 hashtag #CloudGarage Docker管理 課題: ネットワークやDockerイメージ作成など、 すべてコマンドで操作が必要 Instance-01 Dockerはひとつのサーバーインスタンスに、複数イメージを搭載できる
解決: 牧場を作る
Page 22 hashtag #CloudGarage Rancher 課題: WebUIによる、Dockerの管理 Instance-01 RancherによるDockerの管理
Page 23 hashtag #CloudGarage Rancherとは https://www.slideshare.net/cyberblackvoom/tryranchercomrancher
Page 24 hashtag #CloudGarage ゴール (1) Docker Compose作成 KUSANAGI環境取得 Instance
(4)Local環境で編集 (5)Dockerイメージ作成 (7)サーバーインスタンスを 用意 (9) Docker Compose作成 Docker イメージ取得 (0) Local環境に Dockerインストール Prime Strategy Repository ,etc (2)Dokcer Hub アカウント作成 (3)リポジトリ作成 Your New Repository (6)Dokcerイメージ アップロード (8)サーバーインスタンスに Dockerインストール
Service Site Facebook Twitter hashtag https://cloudgarage.jp @CloudGarage.PR @CloudGarage_PR #CloudGarage