1. 程式人生 > >Docker學習(七)實戰 - 構建REDIS映象

Docker學習(七)實戰 - 構建REDIS映象

Docker學習(七)實戰 - 構建REDIS映象


前言

官網已提供了Redis的基礎映象,在生產環境儘量使用官網提供的基礎映象,這篇文章主要是為了綜合使用一下Dockerfile相關命令,讓我們理解更加深入一些

實戰

前期準備

準備Redis原始檔包
配置檔案

cd /usr/local/docker
mkdir docker-redis
cd docker-redis

將我們使用到的原始檔上傳到當前目錄

編寫Dockerfile

vim Dockerfile 增加下如下內容

FROM centos:centos7
RUN ["yum" , "install" , "-y" ,"gcc","gcc-c++","net-tools","make"]
WORKDIR /usr/local
ADD redis-4.0.14.tar.gz .
WORKDIR /usr/local/redis-4.0.14/src
RUN make && make install
WORKDIR /usr/local/redis-4.0.14
ADD redis-7000.conf .
EXPOSE 7000
CMD ["redis-server","redis-7000.conf"]

Dockerfile解讀

  1. 設定基準映象centos
  2. 增加RUN命令,構建時執行指令 yum install -y gcc gcc-c++ net-tools make
  • 安裝 gcc gcc-c++ 兩個元件對redis原始碼進行編譯
  • net-tools網路工具的安裝包
  • make安裝程式的必備元件
  1. 切換容器的目錄到 /usr/local
  2. 解壓redis-4.0.14.tar.gz到容器目錄/usr/local
  3. 進入解壓完的原始碼目錄
  4. 對原始碼目錄使用gcc編譯並進行安裝
  5. 切換工作目錄到/usr/local.redis-4.0.14
  6. redis-7000.conf到當前的工作目錄
  7. 暴露容器內部的7000埠對宿主機
  8. 執行命令 redis-server redis-7000.conf啟動 Redis

打包映象

docker build -t albk.tech/docker-redis .

檢視映象

docker images

後臺執行映象

docker run -p 7000:7000 albk.tech/docker-redis

檢視7000埠是否可用

netstat -tulnp

進入redis容器

docker ps 
docker exec -it f80c151f5d2f  /bin/bash

redis-7000.conf已按我們的指令碼打到REDIS的安裝目錄中

總結

到這裡我們已經打包好一個自己的redis映象了, 在實際中工作沒有必要這樣做,官方早已提供好相關的映象了, 本文只是對前面Dockerfile命令和docker命令的綜合應用

附錄

實際環境中啟動redis

docker pull redis
docker run -d redis
這兩行命令就已經可以建立一個redis容器,如果對版本有要求,可以指定對應版本的tag即可

寫在最後

相關文章會首發公眾號,可以關注公號albk,關注後可以獲取大量學習視訊

期望熱愛技術的你一起來交流,獲取最新資料和學習資源,可以關注公眾號albk, 個人部落格 !