2 回答

TA貢獻1772條經驗 獲得超6個贊
創建一個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 /redis .
運行服務
使用我們剛才創建的redis鏡像
使用 -d 運行這個服務分離模式,讓容器在后臺運行。
重要的是我們沒有開放容器端口,相反,我們將使用一個容器來連接redis容器數據庫
sudo docker run -name redis -d /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容器
- 2 回答
- 0 關注
- 973 瀏覽
添加回答
舉報