Docker 초보자가 연습을 위한 본격적인 빠른 시작 기록
6225 단어 Docker
개시하다
천리 길도 한 걸음부터.
Docker 초보자가 연습을 위한 본격적인 빠른 시작 기록
https://docs.docker.com/compose/rails/
컨디션
OS: OSX
Docker: Docker for Mac
Editor: emacs
Shell: zsh
단계(레코드) # テキトウな空のディレクトリを作成する
$ mkdir docker_practice
$ cd docker_practice
# Dockerファイルを作成する
$ emacs Dockerfile
Docker file의 내용은 다음과 같습니다.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
생성Gemfile
$ emacs Gemfile
Gemfile
의 내용은 다음과 같다.source 'https://rubygems.org'
gem 'rails', '5.2.0'
비워두기Gemfile.lock
도 필요하니까 먼저 해$ touch Gemfile.lock
docker-compose.yml
.$ emacs docker-compose.yml
docker-compose.yml
의 내용은 다음과 같다.
환경 변수에서 빼내는 게 좋을 텐데...등등, 심사숙고 없이 써냈어요
docker-compose.ymlversion: '3'
services:
db:
image: postgres
volumes:
- ./tmp/db:/var/lib/postgresql/data
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/myapp
ports:
- "3000:3000"
depends_on:
- db
이동 라일스의 컨테이너rails new
로 해보세요.$ docker-compose run web rails new . --force --database=postgresql
여기에 도착하면 web
안의 물건을 엿볼 수 있다$ docker-compose run web bash
/myapp# ls -l
total 36
-rw-r--r-- 1 root root 223 Sep 4 18:38 Dockerfile
-rw-r--r-- 1 root root 2223 Sep 4 18:41 Gemfile
-rw-r--r-- 1 root root 5300 Sep 4 18:42 Gemfile.lock
-rw-r--r-- 1 root root 374 Sep 4 18:41 README.md
-rw-r--r-- 1 root root 227 Sep 4 18:41 Rakefile
drwxr-xr-x 10 root root 320 Sep 4 18:41 app
drwxr-xr-x 9 root root 288 Sep 4 18:42 bin
drwxr-xr-x 16 root root 512 Sep 4 19:09 config
-rw-r--r-- 1 root root 130 Sep 4 18:41 config.ru
drwxr-xr-x 3 root root 96 Sep 4 18:41 db
-rw-r--r-- 1 root root 266 Sep 4 18:39 docker-compose.yml
drwxr-xr-x 4 root root 128 Sep 4 18:41 lib
drwxr-xr-x 4 root root 128 Sep 4 18:51 log
-rw-r--r-- 1 root root 63 Sep 4 18:41 package.json
drwxr-xr-x 9 root root 288 Sep 4 18:41 public
drwxr-xr-x 3 root root 96 Sep 4 18:41 storage
drwxr-xr-x 11 root root 352 Sep 4 18:41 test
drwxr-xr-x 9 root root 288 Sep 4 18:59 tmp
drwxr-xr-x 3 root root 96 Sep 4 18:41 vendor
/myapp# exit
구축docker-compose.yml
에 정의된 서비스$ docker-compose build
rails를 시작하기 위해서는 설정이 필요합니다db
$ emacs config/database.yml
postgresql
사용, 아래와 같다.
config/database.ymldefault: &default
adapter: postgresql
encoding: unicode
host: db
username: postgres
password:
pool: 5
development:
<<: *default
database: myapp_development
test:
<<: *default
database: myapp_test
마이그레이션 재생$ docker-compose run web rake db:create
일어나봐.$ docker-compose up
http://localhost:3000/
라일스의 움직임을 확인할 수 있을 거예요.
링크
OS: OSX
Docker: Docker for Mac
Editor: emacs
Shell: zsh
단계(레코드) # テキトウな空のディレクトリを作成する
$ mkdir docker_practice
$ cd docker_practice
# Dockerファイルを作成する
$ emacs Dockerfile
Docker file의 내용은 다음과 같습니다.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
생성Gemfile
$ emacs Gemfile
Gemfile
의 내용은 다음과 같다.source 'https://rubygems.org'
gem 'rails', '5.2.0'
비워두기Gemfile.lock
도 필요하니까 먼저 해$ touch Gemfile.lock
docker-compose.yml
.$ emacs docker-compose.yml
docker-compose.yml
의 내용은 다음과 같다.
환경 변수에서 빼내는 게 좋을 텐데...등등, 심사숙고 없이 써냈어요
docker-compose.ymlversion: '3'
services:
db:
image: postgres
volumes:
- ./tmp/db:/var/lib/postgresql/data
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/myapp
ports:
- "3000:3000"
depends_on:
- db
이동 라일스의 컨테이너rails new
로 해보세요.$ docker-compose run web rails new . --force --database=postgresql
여기에 도착하면 web
안의 물건을 엿볼 수 있다$ docker-compose run web bash
/myapp# ls -l
total 36
-rw-r--r-- 1 root root 223 Sep 4 18:38 Dockerfile
-rw-r--r-- 1 root root 2223 Sep 4 18:41 Gemfile
-rw-r--r-- 1 root root 5300 Sep 4 18:42 Gemfile.lock
-rw-r--r-- 1 root root 374 Sep 4 18:41 README.md
-rw-r--r-- 1 root root 227 Sep 4 18:41 Rakefile
drwxr-xr-x 10 root root 320 Sep 4 18:41 app
drwxr-xr-x 9 root root 288 Sep 4 18:42 bin
drwxr-xr-x 16 root root 512 Sep 4 19:09 config
-rw-r--r-- 1 root root 130 Sep 4 18:41 config.ru
drwxr-xr-x 3 root root 96 Sep 4 18:41 db
-rw-r--r-- 1 root root 266 Sep 4 18:39 docker-compose.yml
drwxr-xr-x 4 root root 128 Sep 4 18:41 lib
drwxr-xr-x 4 root root 128 Sep 4 18:51 log
-rw-r--r-- 1 root root 63 Sep 4 18:41 package.json
drwxr-xr-x 9 root root 288 Sep 4 18:41 public
drwxr-xr-x 3 root root 96 Sep 4 18:41 storage
drwxr-xr-x 11 root root 352 Sep 4 18:41 test
drwxr-xr-x 9 root root 288 Sep 4 18:59 tmp
drwxr-xr-x 3 root root 96 Sep 4 18:41 vendor
/myapp# exit
구축docker-compose.yml
에 정의된 서비스$ docker-compose build
rails를 시작하기 위해서는 설정이 필요합니다db
$ emacs config/database.yml
postgresql
사용, 아래와 같다.
config/database.ymldefault: &default
adapter: postgresql
encoding: unicode
host: db
username: postgres
password:
pool: 5
development:
<<: *default
database: myapp_development
test:
<<: *default
database: myapp_test
마이그레이션 재생$ docker-compose run web rake db:create
일어나봐.$ docker-compose up
http://localhost:3000/
라일스의 움직임을 확인할 수 있을 거예요.
링크
# テキトウな空のディレクトリを作成する
$ mkdir docker_practice
$ cd docker_practice
# Dockerファイルを作成する
$ emacs 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
$ emacs Gemfile
source 'https://rubygems.org'
gem 'rails', '5.2.0'
$ touch Gemfile.lock
$ emacs docker-compose.yml
version: '3'
services:
db:
image: postgres
volumes:
- ./tmp/db:/var/lib/postgresql/data
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/myapp
ports:
- "3000:3000"
depends_on:
- db
$ docker-compose run web rails new . --force --database=postgresql
$ docker-compose run web bash
/myapp# ls -l
total 36
-rw-r--r-- 1 root root 223 Sep 4 18:38 Dockerfile
-rw-r--r-- 1 root root 2223 Sep 4 18:41 Gemfile
-rw-r--r-- 1 root root 5300 Sep 4 18:42 Gemfile.lock
-rw-r--r-- 1 root root 374 Sep 4 18:41 README.md
-rw-r--r-- 1 root root 227 Sep 4 18:41 Rakefile
drwxr-xr-x 10 root root 320 Sep 4 18:41 app
drwxr-xr-x 9 root root 288 Sep 4 18:42 bin
drwxr-xr-x 16 root root 512 Sep 4 19:09 config
-rw-r--r-- 1 root root 130 Sep 4 18:41 config.ru
drwxr-xr-x 3 root root 96 Sep 4 18:41 db
-rw-r--r-- 1 root root 266 Sep 4 18:39 docker-compose.yml
drwxr-xr-x 4 root root 128 Sep 4 18:41 lib
drwxr-xr-x 4 root root 128 Sep 4 18:51 log
-rw-r--r-- 1 root root 63 Sep 4 18:41 package.json
drwxr-xr-x 9 root root 288 Sep 4 18:41 public
drwxr-xr-x 3 root root 96 Sep 4 18:41 storage
drwxr-xr-x 11 root root 352 Sep 4 18:41 test
drwxr-xr-x 9 root root 288 Sep 4 18:59 tmp
drwxr-xr-x 3 root root 96 Sep 4 18:41 vendor
/myapp# exit
$ docker-compose build
$ emacs config/database.yml
default: &default
adapter: postgresql
encoding: unicode
host: db
username: postgres
password:
pool: 5
development:
<<: *default
database: myapp_development
test:
<<: *default
database: myapp_test
$ docker-compose run web rake db:create
$ docker-compose up
Reference
이 문제에 관하여(Docker 초보자가 연습을 위한 본격적인 빠른 시작 기록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/juntetsu_tei/items/674891449c003bd77557텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)