質問編集履歴
7
enrtypoint.shの追記とDockerfileの修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -97,8 +97,21 @@
|
|
97
97
|
# Gemfileのbundle install
|
98
98
|
RUN bundle install
|
99
99
|
ADD . $APP_ROOT
|
100
|
+
|
101
|
+
EXPOSE 3000
|
102
|
+
|
103
|
+
# RUN chmod +x /entrypoint.sh
|
104
|
+
|
105
|
+
CMD ["/entrypoint.sh"]
|
100
106
|
```
|
101
107
|
|
108
|
+
entrypoint.sh
|
109
|
+
```
|
110
|
+
yarn install
|
111
|
+
rm /app/tmp/pids/server.pid
|
112
|
+
bin/rails s -p 3000 -b '0.0.0.0'
|
113
|
+
```
|
114
|
+
|
102
115
|
docker-compose.yml
|
103
116
|
```
|
104
117
|
version: '3'
|
6
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -113,10 +113,9 @@
|
|
113
113
|
# volumes:
|
114
114
|
# - /var/lib/mysql
|
115
115
|
|
116
|
-
今回ECRにpushしたのはこのwebというコンテナです
|
116
|
+
今回ECRにpushしたのはこのwebというコンテナのもとのイメージです
|
117
117
|
web:
|
118
118
|
build: .
|
119
|
-
image: 875184864877.dkr.ecr.ap-northeast-1.amazonaws.com/komarigoto-hiroba-web:latest
|
120
119
|
command: rails s -p 3000 -b '0.0.0.0'
|
121
120
|
# volumes:
|
122
121
|
# - .:/myapp
|
5
docker-compose.yml内のどのコンテナが今回ecrにpushしたものなのかを記載
title
CHANGED
File without changes
|
body
CHANGED
@@ -113,6 +113,7 @@
|
|
113
113
|
# volumes:
|
114
114
|
# - /var/lib/mysql
|
115
115
|
|
116
|
+
今回ECRにpushしたのはこのwebというコンテナです
|
116
117
|
web:
|
117
118
|
build: .
|
118
119
|
image: 875184864877.dkr.ecr.ap-northeast-1.amazonaws.com/komarigoto-hiroba-web:latest
|
4
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -28,8 +28,6 @@
|
|
28
28
|
Essential container in task exited
|
29
29
|
```
|
30
30
|
|
31
|
-
```
|
32
|
-
|
33
31
|
### 原因について考えたこと・試したこと
|
34
32
|
調べたところこの停止理由は「タスク定義でessentialとマークしていたコンテナが終了もしくは停止した際に出る」もののようでした。
|
35
33
|
今回タスク内にコンテナは1つしかないため、要はその1つのコンテナが何かの理由で起動しなかったのだと認識しています。
|
3
Dockerfileとdocker-compose.ymlの追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -52,4 +52,80 @@
|
|
52
52
|
この「fargateのタスクのステータスがRUNNINGにならない」事象の原因および対応策について、何かご意見をいただけますと幸いです。よろしくお願いします。
|
53
53
|
|
54
54
|
### 補足情報(FW/ツールのバージョンなど)
|
55
|
-
MAC OS
|
55
|
+
MAC OS
|
56
|
+
|
57
|
+
### 追記
|
58
|
+
Dockerfile
|
59
|
+
```
|
60
|
+
FROM ruby:2.7.1
|
61
|
+
|
62
|
+
# 必要なパッケージのインストール
|
63
|
+
RUN apt-get update -qq && \
|
64
|
+
apt-get install -y build-essential \
|
65
|
+
libpq-dev \
|
66
|
+
nodejs
|
67
|
+
|
68
|
+
# yarnパッケージ管理ツールをインストール
|
69
|
+
RUN apt-get update && apt-get install -y curl apt-transport-https wget && \
|
70
|
+
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
|
71
|
+
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
|
72
|
+
apt-get update && apt-get install -y yarn
|
73
|
+
# Node.jsをインストール
|
74
|
+
RUN curl -sL https://deb.nodesource.com/setup_7.x | bash - && \
|
75
|
+
apt-get install nodejs
|
76
|
+
# chromeのインストール
|
77
|
+
RUN apt-get update && apt-get install -y unzip && \
|
78
|
+
CHROME_DRIVER_VERSION=`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE` && \
|
79
|
+
wget -N http://chromedriver.storage.googleapis.com/$CHROME_DRIVER_VERSION/chromedriver_linux64.zip -P ~/ && \
|
80
|
+
unzip ~/chromedriver_linux64.zip -d ~/ && \
|
81
|
+
rm ~/chromedriver_linux64.zip && \
|
82
|
+
chown root:root ~/chromedriver && \
|
83
|
+
chmod 755 ~/chromedriver && \
|
84
|
+
mv ~/chromedriver /usr/bin/chromedriver && \
|
85
|
+
sh -c 'wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -' && \
|
86
|
+
sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list' && \
|
87
|
+
apt-get update && apt-get install -y google-chrome-stable
|
88
|
+
|
89
|
+
# 作業ディレクトリの作成、設定
|
90
|
+
RUN mkdir /myapp
|
91
|
+
##作業ディレクトリ名をAPP_ROOTに割り当てて、以下$APP_ROOTで参照
|
92
|
+
ENV APP_ROOT /myapp
|
93
|
+
WORKDIR $APP_ROOT
|
94
|
+
|
95
|
+
# ホスト側(ローカル)のGemfileを追加する(ローカルのGemfileは【3】で作成)
|
96
|
+
ADD ./Gemfile $APP_ROOT/Gemfile
|
97
|
+
ADD ./Gemfile.lock $APP_ROOT/Gemfile.lock
|
98
|
+
|
99
|
+
# Gemfileのbundle install
|
100
|
+
RUN bundle install
|
101
|
+
ADD . $APP_ROOT
|
102
|
+
```
|
103
|
+
|
104
|
+
docker-compose.yml
|
105
|
+
```
|
106
|
+
version: '3'
|
107
|
+
services:
|
108
|
+
db:
|
109
|
+
image: mysql:5.7
|
110
|
+
environment:
|
111
|
+
MYSQL_ROOT_PASSWORD: 本来は直書きしています
|
112
|
+
MYSQL_DATABASE: 本来は直書きしています
|
113
|
+
ports:
|
114
|
+
- "3306:3306"
|
115
|
+
# volumes:
|
116
|
+
# - /var/lib/mysql
|
117
|
+
|
118
|
+
web:
|
119
|
+
build: .
|
120
|
+
image: 875184864877.dkr.ecr.ap-northeast-1.amazonaws.com/komarigoto-hiroba-web:latest
|
121
|
+
command: rails s -p 3000 -b '0.0.0.0'
|
122
|
+
# volumes:
|
123
|
+
# - .:/myapp
|
124
|
+
# - /app/tmp
|
125
|
+
ports:
|
126
|
+
- "3000:3000"
|
127
|
+
depends_on:
|
128
|
+
- db
|
129
|
+
stdin_open: true
|
130
|
+
tty: true
|
131
|
+
```
|
2
文章微修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -40,7 +40,7 @@
|
|
40
40
|
※今回タスク実行ロールはecsTaskExecutionRoleを使用しております。このロールはデフォルトでCloudwatchLogsへのアクセス権限を与えられていないという情報を見たため、CloudWatchAgentServerPolicyのポリシーを付与してみましたが、CloudWatchに表示される内容に変化はありませんでした。
|
41
41
|
|
42
42
|
|
43
|
-
同じようなシチュエーションについて書いてある記事を探したところ、上記の事象は**何らかの理由でECRからイメージをpullできていないために発生する**ことが多い、みたいな情報を見つけましたが、それで終わっています。
|
43
|
+
同じようなシチュエーションについて書いてある記事を探したところ、上記の事象は**何らかの理由でECRからイメージをpullできていないために発生する**ことが多い、みたいな情報を見つけましたが、どうすればよいか分からずそれで終わっています。
|
44
44
|
|
45
45
|
以下この事象の解消に関係ありそうだと思って読んでいた記事です。
|
46
46
|
|
1
タイトル修正
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
fargateのタスクのステータスがRUNNINGにならない
|
1
|
+
fargateのタスクのステータスがRUNNINGにならないままSTOPPEDになる
|
body
CHANGED
File without changes
|