docker 官网地址:https://docs.docker.com
docker下载分为两部分:
官网地址:https://docs.docker.com/engine/install/centos/
以centos为例:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo docker run hello-world
sudo systemctl enable docker
阿里云配置地址:https://cr.console.aliyun.com/cn-shenzhen/instances/mirrors
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://4p8905vs.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker run [OPTIONS] IMAGE [COMMAND]
OPTIONS中的一些参数
options | 说明 |
---|---|
--name | “容器新名字”: 为容器指定一个名称 |
-d | 后台运行容器,并返回容器ID,也即启动守护式容器 |
-i | 以交互模式运行容器,通常与 -t 同时使用 |
-t | 为容器重新分配一个伪输入终端,通常与 -i 同时使用 |
-P: | 随机端口映射 |
-p | 指定端口映射,有以下四种格式 ip:hostPort:containerPort ip::containerPort hostPort:containerPort containerPort |
OPTIONS | 说明 |
---|---|
-a | 列出当前所有正在运行的容器+历史上运行过的 |
-l | 显示最近创建的容器。 |
-n | 显示最近n个创建的容器。 |
-q | 静默模式,只显示容器编号。 |
–no-trunc | 不截断输出。 |
退出方式 | 说明 |
---|---|
exit | 容器停止退出 |
ctrl+p+q | 容器不停止退出 |
类似于守护线程,主进程结束,守护线程也就消亡;
docker run -d centos:centos7 /bin/bash -c ‘for i in {1…1000};do echo “hello docker $i”;sleep 3;done’
docker logs -t -f 容器ID
docker top 容器ID
docker inspect 容器ID
docker attach 容器ID
docker exec -it 容器ID 命令 例如:docker exec -it 1a37 ls
进入方式 | 说明 |
---|---|
exec | 在容器中打开新的终端,并且可以启动新的进程 |
attach | 直接进入容器启动命令的终端,不会启动新的进程 |
docker cp 927:/root/hello_world /root