我是docker的新手,我正在尝试使用mysql数据库在ruby中创建一个虚拟的docker映像,这个docker映像需要在不同的系统中执行。不使用docker-compose.yml(使用docker build或cmd)就可以构建docker映像请在这方面帮助我。
我的dockerfile
FROM ruby:2.5
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
RUN mkdir /myapp
WORKDIR /myapp
COPY Gemfile /myapp/Gemfile
COPY Gemfile.lock /myapp/Gemfile.lock
RUN bundle install
COPY . /myapp
还有我的docker-compose.yml
version: '3'
services:
db:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: letmein
MYSQL_DATABASE: myapp
MYSQL_USER: appuser
MYSQL_PASSWORD: letmein
ports:
- "3307:3306"
app:
build: .
command: bundel exec rails s -p 3000 -b '0.0.0.0'
volumes:
- ".:/myapp"
ports:
- "3001:3000"
depends_on:
- db
links:
- db
environment:
DB_USER: root
DB_NAME: myapp
DB_PASSWORD: letmein
DB_HOST: db
数据库.yml
default: &default
adapter: mysql2
encoding: utf8
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
database: <%= ENV['DB_NAME'] %>
username: <%= ENV['DB_USER'] %>
password: <%= ENV['DB_PASS'] %>
host: <%= ENV['DB_HOST'] %>
development:
<<: *default
database: myapp_development
test:
<<: *default
database: myapp_test
production:
<<: *default
database: myapp_production
username: myapp
password: <%= ENV['MYAPP_DATABASE_PASSWORD'] %>
暂无答案!
目前还没有任何答案,快来回答吧!