docker 整理

image 相关的命令:

# 将 image 文件从仓库抓取到本地
docker image pull imageName

# 列出本机的所有 image 文件。
docker image ls

# 删除 image 文件
docker image rm imageName

基于镜像文件创建交互式容器,并挂载到自定目录
docker run -it --name 自定义容器名 -p 8080:8080 -v /your localdirectory/:/Container directory/ imageName:tags /bin/bash

# -i 保持容器运行
# -t 创建交互式容器,为容器分配一个伪终端
# -p 端口映射,-p 宿主端口:容器端口
# -d 创建后台运行创建容器,以守护模式运行容器
# /bin/bash 进入容器的初始化指令
# exit 退出容器

container 相关命令

# 列出本机正在运行的容器,使用 docker container ls 或 docker ps
docker container ls

# 列出本机所有容器,包括终止运行的容器,加上 --all 获取 -a
docker container ls -a

# 停止本机正在运行的容器
docker container stop container_name/container_id
#或者
docker stop container_name/container_id

# 删除某个容器
docker rm container_name/container_id

启动容器已经创建的容器
docker start  container_name/container_id
交互的方式打开容器
docker attach container_name/container_id

文件拷贝

从容器里面拷文件到宿主机
在宿主机里面执行以下命令
docker cp 容器名:要拷贝的文件在容器里面的路径       要拷贝到宿主机的相应路径 

从宿主机拷文件到容器里面
在宿主机里面执行如下命令
docker cp 要拷贝的文件路径 容器名:要拷贝到容器里面对应的路径

保存更改到容镜像

docker commit container_name/container_id my_image:tag
提交容器并在原来的镜像的基础上添加容器中新曾的内容

将容器生成镜像
docker commit containerid/imagename

Docker镜像保存save
docker save imageName  -o  /your path/xxx.tar

加载镜像
docker load -i xxx.tar  

提交远程仓库

# 规范镜像标签
docker tag  镜像ID 用户名称/镜像源名:新的标签名

#登陆,根据提示输入用户名与密码
docker login
# 上传镜像
docker push imagename

DOCKERFILR

FROM:指定基础镜像,必须为第一个命令
MAINTAINER: 维护者信息
RUN:构建镜像时执行的命令
ADD:将本地文件添加到容器中,tar类型文件会自动解压
CMD:构建容器后调用,也就是在容器启动时才进行调用
EXPOSE:指定于外界交互的端口
VOLUME:用于指定持久化目录
WORKDIR:工作目录

运行dockerfile文件
docker build -t name .
-t 是给镜像命名 . 是基于当前目录的Dockerfile来构建镜像

在这里插入图片描述

docker-compose

#在启动容器前构建服务镜像
docker-compose build
#在后台运行服务容器
docker-compose up -d

docker-compose.yml

# 基于Dockerfile或指定的镜像,执行构建任务
build: ./frontend
# 从指定的镜像中启动容器
image:xxx
# 添加环境变量
environment:
# 暴露端口,但不映射到宿主机,只被连接的服务访问
expose: - "8000"
# 覆盖容器启动后默认执行的命令
command: 
# 映射端口,(如果使用的容器端口小于60可能会得到错误得结果)
ports: - 12345:80
# 链接到其它服务的中的容器
links: - web:web
# 挂载一个目录或者一个已存在的数据卷容器
volumes
# HOST:CONTAINER 格式
# HOST:CONTAINER:ro, 数据卷是只读的

猜你喜欢

转载自blog.csdn.net/qq_23664173/article/details/106994621