Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)
-
Upload
docker-inc -
Category
Technology
-
view
19.040 -
download
0
description
Transcript of Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)
![Page 1: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/1.jpg)
Migrating a large code-base to containers
![Page 2: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/2.jpg)
![Page 3: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/3.jpg)
![Page 4: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/4.jpg)
@_dougjohnson @jlozinski
![Page 5: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/5.jpg)
![Page 6: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/6.jpg)
![Page 7: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/7.jpg)
![Page 8: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/8.jpg)
![Page 9: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/9.jpg)
![Page 10: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/10.jpg)
![Page 11: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/11.jpg)
![Page 12: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/12.jpg)
![Page 13: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/13.jpg)
![Page 14: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/14.jpg)
![Page 15: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/15.jpg)
![Page 16: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/16.jpg)
![Page 17: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/17.jpg)
![Page 18: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/18.jpg)
![Page 19: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/19.jpg)
![Page 20: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/20.jpg)
source “http://rubygems.org”
gem ‘rails’, ‘4.1.7’
gem ‘mysql2’
gem ‘jquery-rails’
![Page 21: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/21.jpg)
FROM ruby
ADD . /var/www
RUN bundle install
CMD bundle exec rails s
![Page 22: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/22.jpg)
FROM ruby
ADD Gemfile /var/www/Gemfile
ADD Gemfile.lock /var/www/Gemfile.lock
RUN bundle install
ADD . /var/www/
CMD bundle exec rails s
![Page 23: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/23.jpg)
![Page 24: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/24.jpg)
FROM app_base_with_gems
ADD Gemfile /var/www/Gemfile
ADD Gemfile.lock /var/www/Gemfile.lock
RUN bundle install
ADD . /var/www
CMD bundle exec rails s
![Page 25: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/25.jpg)
source “http://rubygems.org”
source “https://private.server.com”
git “[email protected]:MyOrg/private.git” do
gem “private_gem”
end
![Page 26: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/26.jpg)
![Page 27: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/27.jpg)
docker run -v $(pwd):/var/www \
-v $HOME/.ssh:/root/.ssh \
my_base_ruby \
bundle install —path=/var/www/bundle
docker build -t myapp_base .
docker run -v $(pwd):/var/www \
-v $HOME/.ssh:/root/.ssh \
my_base_ruby \
bundle install —path=/var/www/bundle
docker build -t myapp_base .
docker run -v $(pwd):/var/www \
-v $HOME/.ssh:/root/.ssh \
my_base_ruby \
bundle install —path=/var/www/bundle
docker build -t myapp_base .
docker run -v $(pwd):/var/www \
-v $HOME/.ssh:/root/.ssh \
my_base_ruby \
bundle install —path=/var/www/bundle
docker build -t myapp_base .
![Page 28: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/28.jpg)
![Page 29: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/29.jpg)
docker build -t $TAG .
docker run --name=$TAG \
--link=runningdb:db \
$TAG \
sh -c ‘bundle exec rake app:prepare’
docker commit $TAG $TAG
docker rm $TAG
![Page 30: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/30.jpg)
docker build -t $TAG .
docker run --name=$TAG \
--link=runningdb:db \
$TAG \
sh -c ‘bundle exec rake app:prepare’
docker commit $TAG $TAG
docker rm $TAG
#Restore original CMD
docker run -d --name=$TAG \
$TAG \
sh -c ‘bundle exec rails s’
docker commit $TAG $TAG
docker rm $TAG
![Page 31: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/31.jpg)
![Page 32: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/32.jpg)
![Page 33: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/33.jpg)
![Page 34: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/34.jpg)
![Page 35: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/35.jpg)
?
![Page 36: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/36.jpg)
https://github.com/navy-project
![Page 37: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/37.jpg)
![Page 38: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/38.jpg)
![Page 39: Migrating a large code-base to containers by Doug Johnson and Jonathan Lozinski (Sage)](https://reader036.fdocuments.us/reader036/viewer/2022081401/559b614a1a28ab0a5f8b4719/html5/thumbnails/39.jpg)
Thank You.