Docker Ruby應用程序示例
Docker允許執行Ruby應用程序。 在下面的例子中,我們將演示如何創建一個使用Docker來運行Ruby文件。 它包括以下步驟:
1. 創建一個目錄用來組織應用程序文件
yiibai@ubuntu:~$ mkdir -p /home/yiibai/docker/ruby-docker-app
2. 更改進入工作目錄
yiibai@ubuntu:~$ cd /home/yiibai/docker/ruby-docker-app
3. 創建一個 Dockerfile 文件
使用以下命令:vi /home/yiibai/docker/ruby-docker-app/Dockerfile
打文件寫入以下內容 -
FROM ruby:2
COPY . /var/www/ruby
WORKDIR /var/www/ruby
CMD ["ruby","index.rb"]
4. 創建Ruby文件: index.rb
使用以下命令:vi /home/yiibai/docker/ruby-docker-app/index.rb
打文件寫入以下內容 -
puts "Hello, This is Docker ruby application!\n";
5. 構建 Ruby 的 Docker映像
現在,創建這個Ruby應用程序的Docker映像。 以下命令用於創建Docker映像。
yiibai@ubuntu:~/docker/ruby-docker-app$ sudo docker build -t ruby-app .
執行上面代碼,得到以下結果 -
yiibai@ubuntu:~/docker/ruby-docker-app$ sudo docker build -t ruby-app .
Sending build context to Docker daemon 3.072kB
Step 1/4 : FROM ruby:2
2: Pulling from library/ruby
10a267c67f42: Already exists
fb5937da9414: Already exists
9021b2326a1e: Already exists
dbed9b09434e: Already exists
a24b67985d10: Pull complete
6e2ffc998aca: Pull complete
9cc06f02044a: Pull complete
317603e4a1ed: Pull complete
Digest: sha256:fd5849fbbedd7308ea82feedb0ce190a0db8f9e2b76773957033a3beb3a5cab6
Status: Downloaded newer image for ruby:2
---> 4bcabaf0fe3c
Step 2/4 : COPY . /var/www/ruby
---> 9ed3248ed52e
Removing intermediate container 65d355a9c4a7
Step 3/4 : WORKDIR /var/www/ruby
---> 9f7f3c704acb
Removing intermediate container f64d2717f276
Step 4/4 : CMD ruby index.rb
---> Running in 2870476e9d07
---> 9df42d04cdb2
Removing intermediate container 2870476e9d07
Successfully built 9df42d04cdb2
Successfully tagged ruby-app:latest
yiibai@ubuntu:~/docker/ruby-docker-app$
6. 運行Ruby 的 Docker映像
yiibai@ubuntu:~/docker/ruby-docker-app$ sudo docker run ruby-app
運行docker映像後,執行ruby腳本,並在控制檯屏幕中打印一條消息,如下所示 -
yiibai@ubuntu:~/docker/ruby-docker-app$ sudo docker run ruby-app
Hello, This is Docker ruby application!
yiibai@ubuntu:~/docker/ruby-docker-app$