docker 命令总结
docker status 查看容器运行使用的资源
# service 命令的用法
$ sudo service docker start
# systemctl 命令的用法
$ sudo systemctl start docker
# 列出本机的所有 image 文件。
$ docker image ls
# 删除 image 文件
$ docker image rm [imageName]
# 列出本机正在运行的容器
$ docker container ls
# 列出本机所有容器,包括终止运行的容器
$ docker container ls --all
编写 Dockerfile 文件
新建一个文本文件.dockerignore
写入一下内容
.git
node_modules
npm-debug.log
表示忽略的文件
新建一个文本文件 Dockerfile
写入下面的内容
FROM node:8.4
COPY . /app 拷贝文件
WORKDIR /app 工作目录
RUN npm install ***** 运行命令
EXPOSE 3000 暴露端口
$ docker image build -t koa-demo .
# 或者
$ docker image build -t koa-demo:0.0.1 .
-t参数用来指定 image 文件的名字,后面还可以用冒号指定标签。如果不指定,默认的标签就是latest。最后的那个点表示 Dockerfile 文件所在的路径,上例是当前路径,所以是一个点
docker-compose 的使用 首先安装一下compose 参看文档
编写yml文件
mysql: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=123456 # mysql 密码 - MYSQL_DATABASE=wordpress # 数据库名 web: image: wordpress links: - mysql environment: - WORDPRESS_DB_PASSWORD=123456 ports: - "127.0.0.3:8080:80" # 端口映射 working_dir: /var/www/html # 工作目录 volumes: - wordpress:/var/www/html # 文件映射
docker-compose up
启动两个容器
进入docker bash 命令
docker exec -it CONTAINER_ID bash
如果遇见docker没有 vi
就需要把docker的文件cp出来
docker cp containerID:container_path host_path //从容器复制到主机
然后修改,再把文件cp回去,注意文件的权限是否一直
docker cp host_path containerID:container_path //从主机复制到容器
docker查看日志记录
命令格式: $ docker logs [OPTIONS] CONTAINER Options: --details 显示更多的信息 -f, --follow 跟踪实时日志 --since string 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟) --tail string 从日志末尾显示多少行日志, 默认是all -t, --timestamps 显示时间戳 --until string 显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟) 例子: 查看指定时间后的日志,只显示最后100行: $ docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID 查看最近30分钟的日志: $ docker logs --since 30m CONTAINER_ID 查看某时间之后的日志: $ docker logs -t --since="2018-02-08T13:23:37" CONTAINER_ID 查看某时间段日志: $ docker logs -t --since="2018-02-08T13:23:37" --until "2018-02-09T12:23:37" CONTAINER_ID