0
点赞
收藏
分享

微信扫一扫

学习docker笔记

猎书客er 2022-03-22 阅读 75

学习docker笔记

macOS配置镜像加速

点击Docker Desktop应用图标-> Perferences,在左侧导航菜单选择 Docker Engine,在右侧编辑 json 文件。修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。

{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}

使用镜像

常用命令

# 拉取镜像
docker pull [option] [address[:port]/]repository[:tag]
# 运行镜像
docker run -ti ubuntu:18.04 /bin/bash
# 列出镜像
docker image ls
# 查看镜像、容器、数据卷所占用的空间
docker system df
# 删除<none>镜像
docker image prune
# 列出中间层镜像
docker image ls -a
# 删除本地镜像,<image>可以是镜像短ID、长ID、镜像名、镜像摘要
docker image rm [option]<image1>[<image2>...]
# 启动已终止的容器
docker container start
# 终止一个容器
docker container stop
# 导入和导出容器
docker export <container id> > test.tar
docker import <url> test/test:tag #cat test.tar | docker import - test/test:tag
# 删除容器
docker container rm
docker container prune # 清除所有终止的容器
# 推送
docker push repository:tag	#repository需要和你的仓库名一致

docker run的常用参数

-t: 让docker分配一个伪终端

-i: 让容器的标准输入保持打开

-d: 守护态运行,返回容器ID

-v: 绑定一个卷

-p:指定端口映射,大写则随机映射

-net: 指定容器的网络连接类型, 支持bridge/host/none/container

–expose: 开放一个端口或者一组端口

使用Dockerfile构建镜像

ARG <参数名>[=默认值]
FROM <image>
RUN command #在docker build时运行
COPY [--chown=<user>:<group>] <src> <dst>
ADD #与COPY类似,源文件为.tar gzip bzip2 xz则自动复制并解压到目标路径; 不解压的前提,无法复制tar压缩文件
USER <username>[:usergroup] # 必须存在
WORKDIR dir #切换当前执行的工作目录
ENTRYPOINT ["execute", "param1", ...] # 容器进入时执行的命令
CMD <shell command> #在docker run时运行
CMD ["execute", "param1", "param2", ...]
CMD ["param1", "param2", ...] # 为ENTYPOINT指令提供默认参数
ENV <key> <value> # 设置环境变量
ENV <key1>=<value1> <key2>=<value2> ...
EXPOSE port # 暴露端口
# 构建镜像
docker build -t name:tag .
举报

相关推荐

0 条评论