編寫Docker最佳實踐(翻譯:編寫Dockerfiles的最佳實踐)redis
Docker開發最佳實踐(翻譯:基於docker開發的最佳實踐)docker
下面以一個例子來演示構建鏡像的過程。vim
#在/tmp目錄下演示
cd tmp
mkdir build-redis-image
1.建立Dockerfile文件centos
vim Dockerfile
並寫入以下內容:bash
# 構建Redis鏡像:在Centos7.4鏡像中安裝redis後打包成本身的鏡像。 #基於Centos7.4構建 FROM centos:7.4 #安裝依賴 RUN yum -y install tar cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl #建立安裝目錄 RUN mkdir -p /redis/data && cd /redis #拷貝redis的安裝包 COPY ./redis-3.0.0.tar.gz /redis #解壓 RUN cd /redis && tar -xvf redis-3.0.0.tar.gz && rm -rf redis-3.0.0.tar.gz && cd redis-3.0.0 #編譯、安裝 RUN cd /redis/redis-3.0.0 && make && make install #複製配置文件到/redis中,而且修改redis爲後臺運行 RUN cp /redis/redis-3.0.0/redis.conf /redis/ && echo "daemonize yes" >> redis.conf #設置數據掛載目錄以及工做目錄 VOLUME /redis/data WORKDIR /redis/data #容器啓動後執行該命令 ENTRYPOINT ["/usr/local/bin/redis-server", "/redis/redis.conf"] #設置對外的端口號 EXPOSE 6379
而後上傳須要打包的redis-3.0.0.tar.gz文件到上面建立的/tmp/build-redis-image目錄下,這裏使用rz命令上傳。ui
rz
2.使用docker build命令構建spa
docker build -t my-redis:3.0 . (後面有個點,表示當前路徑)
接下來就能夠使用咱們本身構建的鏡像來建立容器了。.net
3.建立容器翻譯
docker create --name myRedis -p 6379:6379 -t my-redis:3.0
4.啓動容器
docker start myRedis
5.嘗試着鏈接一下redis
docker exec -it myRedis /bin/bash redis-cli 或者直接使用RedisDesktopManager鏈接