docker 使用
科普名词
-
平台: docker 程序就是一个类似平台一样的程序,为了方便理解,你可以把它比喻为类虚拟机。
-
镜像:技术人员构建的各种包含了特殊环境的可以在 docker 上运行的独立子系统包。
-
容器:拉取镜像运行后,封装在一个指定的文件夹位置里的子进程。
海纳思系统内置了一键安装 docker 程序的脚本;
直接一键命令即可安装,包含 docker-compose;
在终端输入这个命令即可 install-docker.sh
安装 docker 平台程序
install-docker.sh
root@hinas:~# docker version # 这句命令是获取 docker 平台的版本号
Client: Docker Engine - Community
Version: 24.0.7
API version: 1.43
Go version: go1.20.10
Git commit: afdd53b
Built: Thu Oct 26 09:08:47 2023
OS/Arch: linux/arm
Context: default
Server: Docker Engine - Community
Engine:
Version: 24.0.7
API version: 1.43 (minimum version 1.12)
Go version: go1.20.10
Git commit: 311b9ff
Built: Thu Oct 26 09:08:47 2023
OS/Arch: linux/arm
Experimental: false
containerd:
Version: 1.6.26
GitCommit: 3dd1e886e55dd695541fdcd67420c2888645a495
runc:
Version: 1.1.10
GitCommit: v1.1.10-0-g18a0cb0
docker-init:
Version: 0.19.0
GitCommit: de40ad0
拉取 docker 各种丰富的镜像
-
拉取镜像
docker pull xxx/xxx
-
运行容器
docker run xxx/xxx --options
-
列出运行中的容器
docker ps -a
会列出所有运行中的容器名称和
id
-
停止运行中的容器
docker stop [ id 的前4位数]
-
删除已停止的容器
docker rm [ id的前4位数字]
-
列出所有镜像
docker images
-
删除已停止的镜像
docker rmi [镜像id的前4位数]
将 docker 镜像安装到其它磁盘位置
如果你的系统空间不足,可以通过修改 docker 平台的配置文件,达到将镜像拉取并安装到其它磁盘位置。
警告注意:这个配置修改,必须在安装 docker 平台后,拉取 docker 镜像前!
注意:请确保你的磁盘稳定在线,否则将会程序错误无法访问 docker .
请参考以下命令修改配置文件/lib/systemd/system/docker.service
systemctl stop docker # 停止 Docker 服务 mkdir -p /mnt/sda1/docker # 建立文件夹
chmod 777 -R /mnt/sda1/docker # 赋予权限 vi /lib/systemd/system/docker.service #
编辑配置文件 ExecStart=/usr/bin/dockerd -H fd://
--containerd=/run/containerd/containerd.sock 插上一句 --data-root
/mnt/sda1/docker 变为如下: ExecStart=/usr/bin/dockerd --data-root
/mnt/sda1/docker -H fd:// --containerd=/run/containerd/containerd.sock systemctl
daemon-reload # 更新启动组件 systemctl start docker # 启动 docker 服务
参考图例:
修改完毕,重启服务后,你再执行拉取的镜像和运行的容器,就会到你指定的磁盘了。
扩展
海纳思系统内置了几个一键安装的脚本,非常便利。推荐需要时选择。
install-portainer.sh #中文容器管理面板
install-qinglong.sh #青龙面板
install-jellyfin.sh #电影削刮器
install-homeassistant.sh #智能家居
install-teslamate1.sh #特斯拉远控系统
常见问题
1、安装 docker-compose 安装失败
原因网络问题,修改 dns 服务器地址
# 打开配置文件
vim /etc/resolv.conf
# 在第一行的问题输入下面内容并保存退出
nameserver 114.114.114.114
# 卸载docker
hinas-clear docker
# 重新执行安装命令
install-docker.sh
附1-docker常用命令
#info|version
docker info #显示docker的系统信息,包括镜像和容器的数量
docker version #显示docker的版本信息。
#帮助命令
docker 命令 --help #帮助命令
#镜像命令
docker images #查看所有本地主机上的镜像 可以使用docker image ls代替
docker search #搜索镜像
docker pull #下载镜像 docker image pull
docker rmi #删除镜像 docker image rm
#容器命令
docker run 镜像id #新建容器并启动
docker ps 列出所有运行的容器 docker container list
docker rm 容器id #删除指定容器
#删除所有容器
docker rm -f $(docker ps -aq) #删除所有的容器
docker ps -a -q|xargs docker rm #删除所有的容器
#启动和停止容器
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前容器
#退出容器
exit #容器直接退出
ctrl +P +Q #容器不停止退出 ---注意:这个很有用的操作
#其他常用命令
docker run -d 镜像名 #后台启动命令
docker logs #查看日志
docker top 容器id #查看容器中进程信息ps
docker inspect 容器id #查看镜像的元数据
docker exec #进入当前容器后开启一个新的终端,可以在里面操作。(常用)
docker attach # 进入容器正在执行的终端
docker cp 容器id:容器内路径 主机目的路径 #从容器内拷贝到主机上
标签:容器,sh,install,使用,镜像,docker,id
From: https://www.cnblogs.com/ban1234/p/18262450