docker使用小记

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

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一.docker 是什么: 2.安装docker 系统:ubuntu16.04 使用脚本自动安装 Docker 官...
    Black_Sun阅读 6,450评论 0 2
  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 13,589评论 0 120
  • docker基本概念 1. Image Definition 镜像 Image 就是一堆只读层 read-only...
    慢清尘阅读 12,859评论 1 21
  • 姓名:刘小琼 公司:宁波大发化纤有限公司 期数:第235期六项精进 日精进打卡第261天 [知~学习] 六项精进 ...
    刘小琼282阅读 1,009评论 0 0
  • 如果我们的心很脆弱很狭小,就像一次性纸杯那样,那么一点点不好的外境,就会把它摧毁,结果一点水都装不了了;而如果我的...
    带你去聆听全世界阅读 3,736评论 0 0

友情链接更多精彩内容