Help us understand the problem. What is going on with this article?

deisへのアプリケーションデプロイ

More than 1 year has passed since last update.

deisへのアプリケーションデプロイについて調べたのでメモ。

deis CLIのインストール

https://deis.com/docs/workflow/quickstart/install-cli-tools/

$ curl https://deis.io/deis-cli/install-v2.sh | sh
Downloading deis-stable-darwin-amd64 From Google Cloud Storage...

The Deis Workflow CLI (deis) is now available in your current directory.

To learn more about Deis Workflow, execute:

    $ ./deis --help

これでカレントディレクトリにdeisバイナリができるので、他のディレクトリからでも実行できるようにする。

$ sudo mv $PWD/deis /usr/local/bin/deis
$ deis version
v2.16.0

deisへのアカウント登録

$ ./deis auth:register http://xxxxxxxx/
username: bwtakacy
password: 
password (confirm): 
email: 
Registered bwtakacy
Logged in as bwtakacy
Configuration file written to /Users/bwtakacy/.deis/client.json

サンプルアプリケーションのデプロイ

適当なサンプルを見つけてデプロイしてみる。

$ git clone https://github.com/deis/example-dockerfile-python
$ cd example-dockerfile-python/

deisへのアプリケーション登録。

$ deis create
Creating Application... done, created unbent-jokester
Git remote deis successfully created for app unbent-jokester.

このとき、アプリケーション名を明示的に指定しないと勝手に振られる。
今回だと unbent-jokester

アプリケーションにHTTPでアクセスできるようにPORTをdeisに設定

$ deis config:set PORT=5000 -a unbent-jokester
Creating config... done

=== unbent-jokester Config
PORT      5000

deis にgit push するためのSSH鍵登録

$ deis keys:add

アプリケーションのデプロイ。

$ git push deis master
Counting objects: 68, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (66/66), done.
Writing objects: 100% (68/68), 12.69 KiB | 0 bytes/s, done.
Total 68 (delta 15), reused 0 (delta 0)
Starting build... but first, coffee!
Step 1 : FROM gliderlabs/alpine:3.4
 ---> bce0a5935f2d
Step 2 : RUN apk-install python
 ---> Running in 39b182ebd73e
fetch http://alpine.gliderlabs.com/alpine/v3.4/main/x86_64/APKINDEX.tar.gz
fetch http://alpine.gliderlabs.com/alpine/v3.4/community/x86_64/APKINDEX.tar.gz
(1/10) Installing libbz2 (1.0.6-r5)
(2/10) Installing expat (2.2.0-r1)
(3/10) Installing libffi (3.2.1-r2)
(4/10) Installing gdbm (1.11-r1)
(5/10) Installing ncurses-terminfo-base (6.0-r8)
(6/10) Installing ncurses-terminfo (6.0-r8)
(7/10) Installing ncurses-libs (6.0-r8)
(8/10) Installing readline (6.3.008-r4)
(9/10) Installing sqlite-libs (3.13.0-r0)
(10/10) Installing python (2.7.12-r0)
Executing busybox-1.24.2-r13.trigger
OK: 52 MiB in 21 packages
 ---> 20f585223e30
Removing intermediate container 39b182ebd73e
Step 3 : ADD . /app
 ---> 4fb02e9751e9
Removing intermediate container 6e8943ff69ba
Step 4 : WORKDIR /app
 ---> Running in 7da5d19981da
 ---> 081a91eb3d6d
Removing intermediate container 7da5d19981da
Step 5 : CMD python -m SimpleHTTPServer 5000
 ---> Running in 80fb8c715eee
 ---> 53340a72183e
Removing intermediate container 80fb8c715eee
Step 6 : EXPOSE 5000
 ---> Running in c75ebd04d132
 ---> 21f465826ef3
Removing intermediate container c75ebd04d132
Successfully built 21f465826ef3
Pushing to registry
Build complete.
Launching App...
...
...
Done, unbent-jokester:v3 deployed to Workflow

Use 'deis open' to view this application in your browser

To learn more, use 'deis help' or visit https://deis.com/

deis openでアプリケーションにブラウザでアクセスできる。

$ deis open
$ deis releases
=== unbent-jokester Releases
v3  2017-09-06T14:20:43Z    bwtakacy deployed 0b416f0
v2  2017-09-06T14:18:32Z    bwtakacy added PORT
v1  2017-09-06T14:14:11Z    bwtakacy created initial release
$ deis info
=== unbent-jokester Application
updated:  2017-09-06T14:20:43Z
uuid:     d7ea5ea0-3457-4832-b07a-06d5145a3d34
created:  2017-09-06T14:14:11Z
url:      unbent-jokester.xxxxxxxxxxxxx
owner:    bwtakacy
id:       unbent-jokester

=== unbent-jokester Processes
--- cmd:
unbent-jokester-cmd-1501091100-bd1hf up (v3)

=== unbent-jokester Domains
unbent-jokester

=== unbent-jokester Label
No labels found.

アプリケーションの削除は

$ deis destroy
 !    WARNING: Potentially Destructive Action
 !    This command will destroy the application: unbent-jokester
 !    To proceed, type "unbent-jokester" or re-run this command with --confirm=unbent-jokester

> unbent-jokester
Destroying unbent-jokester...
done in 0s
Git remotes for app unbent-jokester removed.
bwtakacy
お仕事:データリサーチエンジニア 技術:C/Java/Python, PostgreSQL/Hadoop/Spark/TreasureData, 機械学習, DeepLearning
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした