Upload
yusuke-kon
View
1.628
Download
0
Embed Size (px)
Citation preview
Docker Compose
@kon_yu
[PR]Best Teacher
Best Teacher
Best Teacher
2.
1. Writing
3. Skype
Rails
• DB SQLite3 -> bundle install
• Ruby
• native extention(nokogiri )
• PostgteSQL Redis
• •
Docker
Docker
Docker for mac Docker for window
VirtualBox
->
Docker
Rails
docker-compse.yml
Docker Compose
• Mac
•DBMS PostgreSQL
•Redis
•Memcached
•Elasticsearch ( )
Rails!"" Docker# !"" elasticsearch# # %"" Dockerfile #kuromoji image# %"" rails# %"" Dockerfile #rails!"" build_docker_container.sh #!"" docker-compose.yml #Docker Compose!"" Gemfile #gem!"" Gemfile.lock #gem!"" package.js #!"" Rails
docker-compose.yml
version: '2'services: postgres: image: postgres:9.5.4 # localhost:5432 ports: - 5432:5432 memcached: image: memcached:1.4.31 elasticsearch:
#Docker Offical ES image kuromoji
image: es_1.7.5 redis: image: redis:3.0.7 …
version: ‘2'…services: rails: build: context: . dockerfile: Docker/rails/Dockerfile tty: true ports: - 3000:3000 # localhost:3000 environment: # ELASTICSEARCH_URL: http://elasticsearch:9200 ELASTICSEARCH_TEST_URL: http://elasticsearch:9300 volumes: # : - ./:/usr/src/app links:# rails
#database.yml host postgres Postgres - postgres - memcached - elasticsearch - redis
Rails DockerfileFROM ruby:2.3.1 #Ruby
# gitRUN apt-get update
#vimRUN apt-get install -y git emacs24-nox vim
# WorkspaceRUN mkdir -p /usr/src/appWORKDIR /usr/src/app
…# RailsRUN apt-get install -y libsqlite3-devRUN gem install bundler
# Dockerfile bundle install# Gemfile Gemfile.lockCOPY Gemfile /usr/src/app/COPY Gemfile.lock /usr/src/app/
# Gemfile github: "activeadmin"RUN bundle config git.allow_insecure true RUN bundle install --jobs 4
# RUN curl -sL https://deb.nodesource.com/setup_6.x | bash -RUN apt-get install -y nodejs
RUN npm installRUN apt-get clean
DBMakefile
Makefile docker npm install db
# Docker Step1build_dockers:
docker build -t es_1.7.5 -f Docker/elasticsearch/Dockerfile .docker-compose up
# Docker Step2dev_env_init:
docker-compose exec rails npm installdocker-compose exec rails bundle exec rake db:resetdocker-compose exec rails bundle exec rake db:seed_fu
———
make build_dockersmake dev_env_init
PC
Docker rails(docker-pomose.ymal ) bash> docker-compose exec rails bash# Rails root@xxxx:# bin/rails server #root@xxxx:# bin/rspec#jsroot@xxxx:# npm run watch
bundle install --path vendor/bundle Rails server
)https://forums.docker.com/t/file-access-in-mounted-volumes-extremely-slow-cpu-bound/8076
memcached redis elasticsearch postgres rails
2GB
4GB
seed
busybox
• Docker Compose
• / •
• Docker
Best Teacher
2.
1. Writing
3. Skype
Rails