Ich habe MySQL nur mit Docker verwendet und es hat lange gedauert, also habe ich es geschrieben, damit ich es später sehen kann. Ich habe pgadmin hinzugefügt, weil es praktisch ist.
docoker-Docker, damit Sie nach dem Zusammenstellen keine Schienen mehr benötigen-compose.Ich habe in yml geschrieben, um es automatisch mit Befehl zu tun.
Normalerweise muss ich den Container nicht neu erstellen, daher gehe ich davon aus, dass ich dies mit "Docker-Compose Start / Stop" tun werde.
#### **`Dockerfile`**
```dockerfile
FROM ruby:2.6
RUN apt-get update -y && \
apt-get install -y nodejs
COPY Gemfile /Gemfile
COPY Gemfile.lock /Gemfile.lock
RUN gem install bundler
RUN bundle install
docker-compose.yml
version: "3"
services:
db:
image: postgres
ports:
- 5432:5432
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
volumes:
- "./postgres-data:/var/lib/postgresql/data"
pgadmin4:
image: dpage/pgadmin4:4.2
ports:
- 80:80
volumes:
- ./docker/pgadmin4:/var/lib/pgadmin
environment:
PGADMIN_DEFAULT_EMAIL: root
PGADMIN_DEFAULT_PASSWORD: root
depends_on:
- db
web:
build: .
volumes:
- ".:/app"
ports:
- "3000:3000"
tty: true
depends_on:
- db
working_dir: "/app"
command: "rails s -b 0.0.0.0"
mysql und database.yml sind unterschiedlich, und ich war süchtig danach, hier so etwas wie "Entwickeln" zu schreiben. Ich musste es standardmäßig richtig schreiben.
config/database.yml
default: &default
adapter: postgresql
encoding: unicode
# For details on connection pooling, see Rails configuration guide
# http://guides.rubyonrails.org/configuring.html#database-pooling
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
#Hier und da
username: root
password: root
host: db
Referenzseite Persistenz der Verbindungsservereinstellungen von pgadmin4 / docker \ -Qiita
Schreiben Sie Rails5 Dockerfile und Docker \ -compose \ .yml \ -Qiita
Recommended Posts