回答編集履歴

1

修正

2017/05/15 13:33

投稿

退会済みユーザー
test CHANGED
@@ -1,29 +1,23 @@
1
- つまりは、「ローカルでrailsを構築したものをdockerでまとめた」ということですね。
1
+ つまりは、「ローカルで構築したものをdockerのrailsを使って起動し」ということですね。
2
2
 
3
+
4
+
3
- それならばvolumeを使ってdockerの中に成果物を組み合わせるのではなく、最初から成果物が入った状態dockerイメージを自作することをおすすめします。
5
+ それならばvolumeを使ってdockerの中に成果物を組み合わせるのではなく、**最初から成果物が入った状態dockerイメージを自作**することをおすすめします。
6
+
7
+
8
+
9
+ ちなみにDockerはDockerfileというモノを書くことで、イメージ(railsやapache)を自作できます。
4
10
 
5
11
  なので手順としては
6
12
 
7
13
 
8
14
 
9
- 1. volumeの内容githubに上げるなりする(公開したない場合はzipやtgzにまとめたりする)
15
+ 1. railsイメージを元に成果物が入っているDockerfileを
10
16
 
11
- 2. railsイメージをベースとするDockerfileを書き、その中でzipをコピーすなりRUN git cloneをするなりして内部に成果物入れ処理を書く
17
+ 2. docker buildでdockerfileをビルドしてみすると自作のイメージことができる。
12
18
 
13
- 3. docker buildでdockerfileをビルドしてみる
14
-
15
- 4. 正常に動いたらdockerfileと依存ファイル一式をgitにあげるなりtgzにまとめるなりして本番環境にコピーする
16
-
17
- 5. 本番環境でdocker buildをしてイメージを作成し、docker composeで環境設定をする
19
+ 3. 本番環境イメージを持っていき、docker composeで設定して起動する
18
20
 
19
21
 
20
22
 
21
- 以上のようなカタチになると思います。面倒したらdocker railsにアタッチして成果物をホストからコピーしイメージを作ってイメージご本番環境に持っていってデプロイしても良いかもしれません
23
+ 以上のようなカタチになると思います。あまり私が全部書いちゃうのもアレなので、行き詰まったところあたコメントください
22
-
23
-
24
-
25
- また、herokuへデプロイしたのならばそのgitリポジトリをそのままサーバーへ持っていっても同じく動作すると思われます。
26
-
27
-
28
-
29
- 本来Dockerはシェルで接続して操作する仮想マシンの役割ではなく、Docker imageやDocker file等を使用してデプロイを効率化するものです。なので質問者さんが追記した方法・認識で正しいと思います。