企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## docker run 创建并运行容器 ~~~ docker run [参数] IMAGE [CMD] [ARG] ~~~ ### 参数 ~~~ --name 指定容器的名称 -t|--tty=true 分配伪tty终端,默认为false -i|--interactive=ture 容器以交互式模式运行 -d|--detach=true|false 让命令在后台运行,命令运行结束,docker也结束 --rm 命令结束后docker退出自动销毁 -h,--hostname 容器的主机名 --ip="" 设定容器IP -P, --publish-all=true|false 为所有的端口映射 -p, --publish=[] 映射指定端口 ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort | containerPort -w, --workdir="" 指定容器的工作目录 ~~~ ## docker start 启动终止的容器 ### 选项 ~~~ -a, --attach 启动后附加 --help Print usage -i, --interactive 附加到容器的标准输入 ~~~ ## docker restart 重新启动运行的容器 ### 选项 ~~~ -t, --time=10 发出终止信号前等待的时间 ~~~ ## docker stop 停止运行的容器 ### 选项 ~~~ -t, --time=10 发出终止信号前等待的时间 ~~~ ## docker attach 进入启动的容器 当多个窗口同时 attach 到同一个容器的时候,所有窗口都会同步显示。当某个窗口因命令阻塞时,其他窗口也无法执行操作了。 ## nsenter 命令 nsenter 工具在 util-linux 包2.23版本后包含。 ~~~ yum install -y util-linux ~~~ ### 使用方法 ~~~ PID=$(docker inspect --format "{{ .State.Pid }}" <container>) nsenter --target $PID --mount --uts --ipc --net --pid ~~~ ### 建议使用 bashrc_docker ~~~ wget -P ~ https://github.com/yeasy/docker_practice/raw/master/_local/.bashrc_docker echo "[ -f ~/.bashrc_docker ] && . ~/.bashrc_docker" >> ~/.bashrc; source ~/.bashrc ~~~ #### 使用方法 ~~~ alias docker-pid="sudo docker inspect --format '{{.State.Pid}}'" alias docker-ip="sudo docker inspect --format '{{ .NetworkSettings.IPAddress }}'" ~~~ #### docker-enter ~~~ docker-enter <container> [cmd] ~~~ 如果后边跟上命令,指令命令后会退出,相当于 ~~~ nsenter --target 63424 --mount --uts --ipc --net --pid env -i ls ~~~ # docker容器 ## docker ps 查看容器状态 ### 参数 ~~~ -a, --all 显示所有容器 -f, --filter value --format string Pretty-print containers using a Go template -n, --last int Show n last created containers (includes all states) (default -1) -l, --latest 显示最新创建的容器 --no-trunc 不截断显示 -q, --quiet -s, --size ~~~ ## docker rm 删除停止的容器 ### 选项 ~~~ -f, --force 强制删除正在运行的容器 -l, --link 移除特殊的连接 -v, --volumes 移除volumes ~~~ ### 示例 ~~~ # 删除所有停止的容器 docker rm $(docker ps -a -q) ~~~ # docker镜像 ## docker images 查看镜像 ## docker rmi 删除镜像 ~~~ -f ,--force 强制 ~~~ ## docker logs CONTAINER ~~~ -f|--follow 是否一直输出 --since[=SINCE] Show logs since timestamp -t|--timestamps 时间戳 --tail[="all"] 倒数多少条 ~~~