复制文件

从容器内部复制到宿主机:
sudo docker cp 容器ID:文件路径 宿主机目的路径

从宿主机复制到容器内部:
sudo docker cp 宿主机文件路径 容器ID:文件路径

查看日志

sudo docker logs [-f] 容器ID

进入容器

sudo docker exec -it 容器ID bash

导出镜像

  1. 语法: docker save -o 文件名 镜像名/ID
  2. 示例: sudo docker save -o docker-neo4j-rest-api.tar.gz 7db7ae9957c2
  1. [admin@kettle ~]$ _ docker save --help
  2. Usage: docker save [OPTIONS] IMAGE [IMAGE...]
  3. Save one or more images to a tar archive (streamed to STDOUT by default)
  4. Options:
  5. -o, --output string Write to a file, instead of STDOUT

导入镜像

  1. sudo docker load--input mysql.tar.gz

删除none镜像

sudo docker rmi $(sudo docker images | awk ‘$1 ~ /none/ {print $3}’)

解析: awk语句的作用是找出none的image id。 $1 ~ /none/ 用于匹配包含none的行,print $3 打印image id

参考: awk简明教程

设置镜像时区

针对debian(centos)系统:
RUN echo “Asia/Shanghai” > /etc/timezone &&
dpkg-reconfigure -f noninteractive tzdata

  1. FROM java:8
  2. RUN echo "Asia/Shanghai" > /etc/timezone && \
  3. dpkg-reconfigure -f noninteractive tzdata
  4. VOLUME /tmp
  5. ADD taiyuan-zhsq-0.0.1-SNAPSHOT.jar /app.jar
  6. # RUN ip route | awk '/default/ {print $3 "\t consul"}' >> /etc/hosts
  7. EXPOSE 9000
  8. ENTRYPOINT ["java","-jar","/app.jar","--spring.profiles.active=dev"]

最新版:

  1. FROM centos:7
  2. TZ=Asia/Shanghai
  3. RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

针对Ubuntu:

  1. ENV TZ=Asia/Shanghai \
  2. DEBIAN_FRONTEND=noninteractive
  3. RUN apt update \
  4. && apt install -y tzdata \
  5. && ln -fs /usr/share/zoneinfo/${TZ} /etc/localtime \
  6. && echo ${TZ} > /etc/timezone \
  7. && dpkg-reconfigure --frontend noninteractive tzdata \
  8. && rm -rf /var/lib/apt/lists/*;
  1. FROM openjdk:8
  2. RUN echo "Asia/Shanghai" > /etc/timezone

针对alpine镜像:

  1. RUN apk --update add tzdata && \
  2. cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
  3. echo "Asia/Shanghai" > /etc/timezone && \
  4. apk del tzdata && \
  5. rm -rf /var/cache/apk/*

Docker及docker-compose安装

安装最新版docker

链接地址:https://docs.docker.com/engine/install/centos/
1、卸载旧版docker(如果有)

  1. yum remove docker \
  2. docker-client \
  3. docker-client-latest \
  4. docker-common \
  5. docker-latest \
  6. docker-latest-logrotate \
  7. docker-logrotate \
  8. docker-engine

2、安装工具以及repo库

  1. $ sudo yum install -y yum-utils
  2. $ sudo yum-config-manager \
  3. --add-repo \
  4. https://download.docker.com/linux/centos/docker-ce.repo

3、正式安装命令

  1. yum install -y docker-ce docker-ce-cli containerd.io

安装docker-compose:

sudo pip3 install docker-compose

设置国内镜像源

配置为阿里云:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

  1. 修改文件/etc/docker/daemon.json(如果不存在,就创建)

    1. {
    2. #请把地址改成阿里云提供的地址,我的是 https://re9v4xel.mirror.aliyuncs.com
    3. "registry-mirrors": ["https://re9v4xel.mirror.aliyuncs.com"]
    4. }
    5. 1,1 全部
    6. {
    7. "registry-mirrors": [
    8. "https://re9v4xel.mirror.aliyuncs.com",
    9. "https://hub-mirror.c.163.com",
    10. "https://mirror.baidubce.com"
    11. ]
    12. }
  2. 重启

    1. systemctl daemon-reload
    2. systemctl restart docker