teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

ディレクトリ配置のdocker-compose.yml、Dockerfileの内容の追加

2021/07/17 01:23

投稿

otyaotya
otyaotya

スコア1

title CHANGED
File without changes
body CHANGED
@@ -160,7 +160,7 @@
160
160
  environment:
161
161
  MYSQL_DATABASE: docker_development
162
162
  MYSQL_ROOT_PASSWORD: 'password'
163
- MYSQL_USER: sayaka
163
+ MYSQL_USER: hoge
164
164
  MYSQL_PASSWORD: 'password'
165
165
  ports:
166
166
  - "4306:3306"
@@ -189,7 +189,7 @@
189
189
 
190
190
  development:
191
191
  <<: *default
192
- username: sayaka
192
+ username: hoge
193
193
  password: password
194
194
  database: docker_development
195
195
 

1

ディレクトリ配置のdocker-compose.yml、Dockerfileの内容の追加

2021/07/17 01:23

投稿

otyaotya
otyaotya

スコア1

title CHANGED
File without changes
body CHANGED
@@ -140,7 +140,66 @@
140
140
  1 gem installed
141
141
  ```
142
142
 
143
+ ```Dockerfile
144
+ FROM ruby:2.6.6
145
+ RUN apt-get update && apt-get install -y nodejs --no-install-recommends && rm -rf /var/lib/apt/lists/*
146
+ RUN apt-get update && apt-get install -y default-mysql-client --no-install-recommends && rm -rf /var/lib/apt/lists/*
147
+ RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
148
+ RUN mkdir /workdir
149
+ WORKDIR /workdir
150
+ ADD Gemfile /workdir/Gemfile
151
+ ADD Gemfile.lock /workdir/Gemfile.lock
152
+ RUN bundle install
153
+ ADD . /workdir
154
+ ```
155
+ ```docker-compose.yml
156
+ version: '3'
157
+ services:
158
+ db:
159
+ image: mysql:5.7
160
+ environment:
161
+ MYSQL_DATABASE: docker_development
162
+ MYSQL_ROOT_PASSWORD: 'password'
163
+ MYSQL_USER: sayaka
164
+ MYSQL_PASSWORD: 'password'
165
+ ports:
166
+ - "4306:3306"
167
+ web:
168
+ build:
169
+ context: .
170
+ dockerfile: Dockerfile
171
+ command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'
172
+ tty: true
173
+ stdin_open: true
174
+ depends_on:
175
+ - db
176
+ ports:
177
+ - "3000:3000"
178
+ volumes:
179
+ - .:/workdir
180
+ ```
143
181
 
182
+ ```database.yml
183
+
184
+ default: &default
185
+ adapter: mysql2
186
+ encoding: utf8
187
+ pool: 5
188
+ host: db
189
+
190
+ development:
191
+ <<: *default
192
+ username: sayaka
193
+ password: password
194
+ database: docker_development
195
+
196
+ production:
197
+ <<: *default
198
+ database: docker_production
199
+ username: docker
200
+ password: <%= ENV['DOCKER_DATABASE_PASSWORD'] %>
201
+ ```
202
+
144
203
  なお、私の環境は以下の通りです。
145
204
  macOS Catalina バージョン 10.15.6
146
205
  Ruby 2.6.6