我是码头工的新手,我已经看了这个,但没有一个指南说清楚。
我有一个基本的Sinatra应用程序。在其根目录中,我有一个Dockerfile
:
FROM <my_quay_ruby_image> # Supplied for me by someone else
USER root
RUN mkdir /app
WORKDIR /app
COPY Gemfile* /app/
RUN bundle install
COPY . /app/
USER myuser
EXPOSE 9898
我还有docker-compose.yml
:
redis:
image: <my_quay_redis_server_url> # Supplied for me by someone else
web:
build: .
ports:
- <my_port>
links:
- "redis:redis"
command: bash -c "sleep 10; bundle exec rackup"
但现在呢?我可以通过运行bundle exec rackup
在本地运行我的Sinatra应用程序,但是如何使用上面的设置通过docker运行它,以便我可以测试和模拟生产中的内容?
答案 0 :(得分:0)
使用docker命令运行容器:
首先,建立它:
$ docker build -t yourimagename .
然后,使用docker:
启动它$ docker run -d \
--name yourcontainername \
yourimagename \
bash -c "sleep 10; bundle exec rackup"
使用docker-compose。建设与发展开始吧:
$ docker-compose -f docker-compose.yml build
$ docker-compose -d -f docker-compose.yml up