初探 Docker

常用命令

# 添加用户到 docker 用户组
sudo groupadd docker

# 查看磁盘使用情况
docker system df

# 安全清理(保留最近使用的资源)
docker system prune

# 清理所有未使用的镜像、容器、网络和构建缓存
docker system prune -a

# 强制清理(不提示确认)
docker system prune -a -f

# 清理悬空镜像
docker image prune

# 清理构建缓存
docker builder prune

分割线

初识

  • 首先Docker是啥就不解释了.

  • 初探尝试安装时出现下面好几个选择,于是搜了搜~

    20210131002505
  • 找到 docker 家族有几个特殊的工具docker-Dockerfile, docker-compose, docker-machine

    20210131004332

docker-Dockerfile

Docker Dockerfile
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。


docker-compose

docker 与 docker-compose 区别
docker 是一个容器,你如果要是安装服务也是要单独一个一个的安装,如果你使用了 docker-compose 的话 就可以使用一个 docker-compose.yml 脚本一键安装
说来其是管理同一个 docker 下多个服务的.


docker-machine

Docker 三剑客之 docker-machine
这个是用来管理多个 docker 的.

分割线

安装启动

Windows

Ubuntu-Server

分割线

加速

镜像加速

Windows

20210205010825

设置代理

docker-本身代理

国内网络环境拉取镜像非常慢,挂代理可以快很多. (不过一般配置了上面的镜像加速就用不着配置代理了)

docker desktop 设置里操作, localhost:7890

docker-容器使用宿主机代理

比如在 docker 里跑了虚拟机 (docker-osx, 默认是桥接网络实际用起来是没有科学的

可以选择在创建容器时 --net=host 使用主机网络, 但不如:

host.docker.internal 指向宿主机内网 IP, proxy 可以直接写为 host.docker.internal:7890

分割线

docker 管理

VScode-docker

  • 在 Manjaro 虚拟机中启动 docker 服务,然后用 vscode-ssh 连接 manjaro

  • 安装 docker 插件,就可以享受比较方便的可视化了(个人非常喜欢这种方式)

    20210206153528
  • 另外再安装Resource Monitor这个插件可以监控远程机资源消耗(如上图最下方)

分割线

常用命令

命令行执行

有些文档的命令是这样, 行末的 '' 是 shell 的换行符, windows 不支持, 删掉就好

docker run -d \
  -p 8088:8088 \
  --name next-terminal \
  --restart always ghcr.io/dushixiang/next-terminal:latest

docker run -d -p 8088:8088 --name next-terminal --restart always ghcr.io/dushixiang/next-terminal:latest

💧 一些常用终端命令.#docker

docker 自启

  • 启动服务

    sudo systemctl start docker.service
  • 开机自动启动 docker 服务

    sudo systemctl enable docker.service
  • 重新载入配置

    sudo systemctl daemon-reload
  • 重启 docker

    sudo systemctl restart docker

导出镜像

docker save ollama/ollama:0.15.6 | gzip > ollama.tar.gz

gunzip -c ollama.tar.gz | docker load

分割线

借物表

暂无…