非常簡單,沒有任何修飾,redis是使用一個連接附加到一個web應用程序。
## 創建一個redis docker容器
首先,我們先為redis創建一個Dockerfile
~~~
FROM ubuntu:12.10
RUN apt-get update
RUN apt-get -y install redis-server
EXPOSE 6379
ENTRYPOINT ["/usr/bin/redis-server"]
~~~
現在你需要通過Dockerfile創建一個鏡像,將替換成你自己的名字。
~~~
sudo docker build -t <your username>/redis .
~~~
## 運行服務
使用我們剛才創建的redis鏡像
使用 -d 運行這個服務分離模式,讓容器在后臺運行。
重要的是我們沒有開放容器端口,相反,我們將使用一個容器來連接redis容器數據庫
~~~
sudo docker run -name redis -d <your username>/redis
~~~
## 創建你的web應用容器
現在我們可以創建我們的應用程序容器,我們使用-link參數來創建一個連接redis容器,我們使用別名db,這將會在redis容器和redis實例容器中創建一個安全的通信隧道
~~~
sudo docker run -link redis:db -i -t ubuntu:12.10 /bin/bash
~~~
進入我們剛才創建的容器,我們需要安裝redis的redis-cli的二進制包來測試連接
~~~
apt-get update
apt-get -y install redis-server
service redis-server stop
~~~
現在我們可以測試連接,首先我么要先查看下web應用程序容器的環境變量,我們可以用我們的ip和端口來連接redis容器
~~~
env
. . .
DB_NAME=/violet_wolf/db
DB_PORT_6379_TCP_PORT=6379
DB_PORT=tcp://172.17.0.33:6379
DB_PORT_6379_TCP=tcp://172.17.0.33:6379
DB_PORT_6379_TCP_ADDR=172.17.0.33
DB_PORT_6379_TCP_PROTO=tcp
~~~
我們可以看到我們有一個DB為前綴的環境變量列表,DB來自指定別名連接我們的現在的容器,讓我們使用DB_PORT_6379_TCP_ADDR變量連接到Redis容器。
~~~
redis-cli -h $DB_PORT_6379_TCP_ADDR
redis 172.17.0.33:6379>
redis 172.17.0.33:6379> set docker awesome
OK
redis 172.17.0.33:6379> get docker
"awesome"
redis 172.17.0.33:6379> exit
~~~
我們可以很容易的使用這個或者其他環境變量在我們的web應用程序容器上連接到redis容器
- 關于Docker
- 鏡像簡介
- 安裝篇
- Mac OS X
- Ubuntu
- Red Hat Enterprise Linux
- CentOS
- Debain
- Gentoo
- Google Cloud Platform
- Rackspace Cloud
- Amazon EC2
- IBM Softlayer
- Arch Linux
- FrugalWare
- Fedora
- openSUSE
- CRUX Linux
- Microsoft Windows
- Binaries
- 用戶指南
- 使用Docker Hub
- 在Docker中運行應用
- 使用容器
- 使用docker鏡像
- 連接容器
- 管理容器數據
- 使用Docker Hub
- Docker Hub
- 賬戶
- 存儲庫
- 自動構建
- 官方案例
- Docker中運行MongoDB
- Docker中運行Redis服務
- Docker中運行PostgreSQL
- Docker中運行Riak服務
- Docker中運行SSH進程服務
- Docker中運行CouchDB服務
- Docker中運行Apt-Cacher-ng服務