docker 常用命令

By | 2024-09-17


1 !!安装Docker
sudo apt-get update
sudo apt-get install docker.io
docker —version

安装Docker Compose

sudo apt-get install docker-compose
2运行容器,安装常用软件包组

docker run -it debian:buster
apt update
apt install sudo vim wget curl git -y
3提交为新镜像

docker commit container_id debian:buster-complete
docker commit a8f2ab22a4bb debian:buster

后续使用新镜像启动

docker run -it debian:buster-complete
这种方式,我们在 Debian 完整版镜像的基础上额外安装了 sudo、vim、wget、curl、git 等常用软件,然后提交为一个新的镜像。
之后就可以使用这个新增软件包的 Debian 镜像启动容器。

  1. restart: always
    1.1 restart: unless-stopped
    2.docker stop <container_name> 删除容器
    docker rm <container_name>
  2. docker rmi <container_name> 删除镜像
    4.
    version: ‘3’
    services:
    my-container:
    image: your-image
    networks:
    my-network:
     ipv4_address: 192.168.0.10
    

networks:
my-network:
driver: bridge
ipam:
config:

    - subnet: 192.168.0.0/24

Docker 常用命令有以下几个:

docker run:用于创建并启动一个新的容器。
docker stop:用于停止一个正在运行的容器。
docker rm:用于删除一个已经停止的容器。
docker ps:用于列出当前正在运行的容器。
docker images:用于列出当前系统中的镜像。
docker pull:用于从远程仓库拉取镜像到本地。
docker push:用于将本地的镜像推送到远程仓库
sudo docker run -p 1338:1338 -d —restart=unless-stopped ramonvc/freegpt-webui (—name 名称设定容器名字通常freegpt-webui1)
-v <主机目录>:<docker目录> 如: -v /tmp/usr/haogougou6.eu.org:/etc/docker
docker run —ip=192.168.0.10 my-container

  1. docker —version 查看版本
  2. opkg 命令使用
    6.1 opkg update 升级
    6.2 opkg list 查看
    6.3 opkg list|grep docker
    6.31 opkg list|grep ttyd 查找 ttyd 查看
    6.4 opkg install 复制插件名称
    6.5 自定义 docker 网络
    6.51 docker network create bravenet //bravenet (网络名称)
    6.52 docker network ls 查看现有网络
    6.53 mkdir 新建目录
    6.54 ls 路径列表
  3. 可以试试使用docker run的参数—net=host,直接使用主机网络,避免Docker默认的网桥和 iptables设置。但是这种模式下容器无法与主机网络隔离,也失去了端口映射等功能。
    使用后直接使用端口登录,如 192.168.3.9:264
    docker run -d —restart=unless-stopped —name music —net=host -v /opt/musicplayerdocker:/var/www/html/cache oldiy/music-player-docker
    docker run -d —restart=unless-stopped —name music -p 264:264 -v /opt/musicplayerdocker:/var/www/html/cache oldiy/music-player-docker

1.上传配置文件到vps上, cd 到当前文件夹,输入命令 如: cd /usr/docker-compose
2.可以分别用 docker-compose -f frps.yml up 和 docker-compose -f services.yml up 来启动。
3 加入网络: docker exec -it docker-compose_zerotier-moon_1 zerotier-cli join c7c8172af1a9cf3d
4.Your ZeroTier moon id is b99bc9656d, you could orbit moon using “zerotier-cli orbit b99bc9656d b99bc9656d”

  1. 查看状态
    docker exec -it docker-compose_zerotier-moon_1 zerotier-cli status
    docker exec -it +docker名称 +命令,这是 在docker 内部运行命令,的指令。
    6 1.54#确认是否加入
    docker exec -docker-compose_zerotier-moon_1 zerotier-cli listpeers
    7 查看客户端 ip docker exec -it docker-compose_zerotier-moon_1 zerotier-cli -j listnetworks
    8 https://my.zerotier.com/network/c7c8172af1a9cf3d 对一下从新去钩子,再次打勾,间隔几秒.
    IPv4 Auto-Assign
    Auto-Assign from Range
    9 ping 192.168.196.86 -t
    10.重新加载docker-compose的服务可以使用以下命令:
    docker-compose -f services.yml up —force-recreate
    不再次自动加载
    docker-compose -f services.yml down
    4 docker-compose -f services+frps+moon.yml up —force-recreate -q 不提示运行

要安装 docker-compose 到 OpenWRT,您可以使用以下步骤:

使用 opkg install python3-pip 命令安装 Python 3 pip 包。
使用 pip3 install docker-compose 命令安装 docker-compose。
创建一个包含 docker-compose 配置文件的目录。
将您的 docker-compose 配置文件保存到该目录中。
使用 docker-compose up 命令启动 docker-compose 容器。
以下是一些额外的说明:

您可以使用 docker-compose -f <file> 命令使用不同的 docker-compose 配置文件。
您可以使用 docker-compose -p <project> 命令为您的 docker-compose 配置文件指定一个项目名称。
您可以使用 docker-compose logs 命令查看 docker-compose 容器的日志。
您可以使用 docker-compose ps 命令查看 docker-compose 容器的状态。
您可以使用 docker-compose stop 命令停止 docker-compose 容器。
您可以使用 docker-compose kill 命令杀死 docker-compose 容器。
您可以使用 docker-compose rm 命令删除 docker-compose 容器。
以下是一些 docker-compose 配置文件的示例:

version: ‘3.3’

services:
web:
image: nginx
ports:

  - 80:80

db:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: mydb
此配置文件将创建两个容器:一个名为 web 的容器,其图像为 nginx,并在端口 80 上公开,以及一个名为 db 的容器,其图像为 mysql,并在端口 3306 上公开。

要启动这些容器,您可以使用以下命令:

docker-compose up -d
要停止这些容器,您可以使用以下命令:

docker-compose down
要删除这些容器,您可以使用以下命令:

docker-compose rm
11 docker一直重启操作:
11.1 停止并删除当前有问题的容器:
docker stop debian-container
docker rm debian-container
11.2 使用 -it 启动容器:
docker run -it —name debian-container debian:buster
12.您好,如果要在一个已经在后台运行的Docker容器中切换到前台交互模式,可以这样操作:

12.1首先需要找到要切换的容器的名称或ID:
docker ps
12.2然后使用 docker attach 命令连接到运行中的容器:
docker exec 启动新的 Bash 会话:
docker exec -it <container> bash
docker exec -it 3597202044d2 bash
当不需要交互时,可以按 Ctrl + D 退出,或输入 exit

12.2 直接前台运行

docker run -it —name debian-container debian:buster
docker run -d —name debian-container —restart=unless-stopped -v /usr/docker/debian:/data -p 8080:80 -p 2222:22 -p 2223:2223 -p 2224:2224 -p 2225:2225 debian:buster
docker run -it —name debian-container —restart=unless-stopped -v /usr/docker/debian:/data -p 8080:80 -p 2222:22 -p 2223:2223 -p 2224:2224 -p 2225:2225 debian:buster
docker run -d —name debian-container —restart=unless-stopped -p 8080:80 -p 2222:22 -p 2223:2223 -p 2224:2224 -p 2225:2225 debian:buster

如果想完全停止容器,可以使用 docker stop。
需要注意的是,docker attach 连接到的容器必须已经在后台运行,如果容器还没启动会报错。

另外,docker attach 不会影响容器本身的运行状态。

我梳理了一下切换到前台交互模式的主要方法,请根据您的实际情况操作,有任何问题欢迎提出。
13 查看容器的状态:
docker ps
docker container inspect -f “{{.State.Status}}” f7b70ac9ca37