用户工具

站点工具


docker

官网:https://www.docker.com/

0 官方 tutor

1 clone

docker run --name repo alpine/git clone https://github.com/docker/getting-started.git
docker cp repo:/git/getting-started/ .

2 build

cd getting-started
docker build -t docker101tutorial .

3 run

docker run -d -p 80:80 --name docker-tutorial docker101tutorial

4 share

docker tag docker101tutorial {userName}/docker101tutorial
docker push {userName}/docker101tutorial

1 基本命令

查看 docker 版本

docker --version

登录registry

# 登录 docker hub
docker login
# 登录指定 registry
docker login xxx.com

列出 docker 镜像

docker image ls
docker images

列出 docker 容器

docker ps
docker ps --all

运行容器

docker run hello-world
# --publish,将宿主机的 8000 端口映射到容器的 8080 端口
# --detach,后台运行
# --name,指定容器的名称
docker run --publish 8000:8080 --detach --name bb bulletinboard:1.0
# 运行一次立即退出
docker run -it --rm bulletinboard:1.0 /bin/bash

停止容器

docker stop bb

删除容器

# --force,可以删除正在运行中的容器
docker rm --force bb

生成镜像

# 根据 Dockerfile 生成镜像
docker build --tag bulletinboard:1.0 
docker build --tag bulletinboard:1.0 .
# 使用修改后的容器生成镜像(保存容器)
docker commit -a "runoob.com" -m "my apache" a404c6c174a2  mymysql:v1

推送镜像到远程仓库(docker hub)

docker tag bulletinboard:1.0 <Your Docker ID>/bulletinboard:1.0
docker push <Your Docker ID>/bulletinboard:1.0

2 组合拳

删除带某个 tag 的所有 docker 镜像

repo_tag="abcdefg"
docker rmi -f $(docker images|grep $repo_tag|awk '{print $3}'|uniq)
docker.txt · 最后更改: 2021/09/10 06:00 由 plough