美文网首页
docker使用小记

docker使用小记

作者: dere | 来源:发表于2018-08-08 14:57 被阅读0次

    0. 目的

    创建一个包含elasticsearch和python3的Docker环境

    1.安装Docker并启动服务

    1.1 ubuntu

    wget -qO- https://get.docker.com/ | sh

    sudo service docker start

    1.2 mac

    下载dmg链接 https://store.docker.com/editions/community/docker-ce-desktop-mac

    dmg文件安装

    运行Docker

    2. Dockfile文件

    FROM ubuntu

    RUN mkdir -p /exp WORKDIR /exp

    RUN apt-get update

    RUN apt-get install -y python3

    RUN apt-get install -y python3-pip

    COPY . .

    RUN pip3 install --no-cache-dir -r requirements.txt CMD /bin/bash

    Note:

        FROM: 基础镜像

        RUN: 执行命令

        COPY: 复制文件/文件夹

    3. 使用 Dockerfile 创建镜像

    docker build -t es_env .

    Note:

        -t: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签.

    4. 创建一个新的容器并运行命令(/bin/bash)

    docker run -it es_env /bin/bash

    Note:

        -i: 以交互模式运行容器,通常与 -t 同时使用;

        -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

    5. 在容器内部署剩余环境

    5.1 jdk安装

    官网下载jdk8的压缩包jdk-8u181-linux-x64.tar.gz

    tar zxvf jdk-8u181-linux-x64.tar.gz

    rm jdk-8u181-linux-x64.tar.gz

    5.2 elasticsearch安装

    参考官方按照文档

    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.zip

    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.zip.sha512

    shasum -a 512 -c elasticsearch-6.3.2.zip.sha512

    unzip elasticsearch-6.3.2.zip

    rm elasticsearch-6.3.2.zip

    5.3 新建用户

    由于elasticsearch不能使用root用户进行运行,所以需要建立一个新用户

    adduser exp

    su exp

    5.4 添加环境(修改~/.bashrc文件)

    vim ~/.bashrc

        alias python=python3

        alias pip=pip3

        export JAVA_HOME=/exp/jdk1.8.0_181

        export ES_HOME=/exp/elasticsearch-6.3.2

        export PATH=${JAVA_HOME}/bin:${ES_HOME}/bin:$PATH

    source ~/.bashrc

    6. 删除一些无用的缓存

    apt-get autoclean

    apt-get autoremove

    apt-get clean

    7. 从容器创建一个新的镜像

    docker commit 710a105c3e76 dereknlp/es_env

    8. 其他在过程使用到的Docker命令

    8.1 删除所有容器

    docker rm $(docker ps -a -q)

    8.2 删除本地所有镜像

    docker rmi $(docker images -q)

    8.3 将指定镜像保存成 tar 归档文件

    docker save -o es_env.tar es_env

    8.4 标记本地镜像,将其归入某一仓库

    docker tag es_env dereknlp/es_env:v1

    9. 完整镜像地址

    docker pull dereknlp/es_env

    相关文章

      网友评论

          本文标题:docker使用小记

          本文链接:https://www.haomeiwen.com/subject/frtxbftx.html