docker容器
一,docker安装和配置
安装 docker 和 docker-compose:
sudo apk add docker docker-cli-compose #安装docker
sudo service docker start #启动docker服务
sudo rc-update add docker default #设置docker为自启动
可选关闭防火墙:
sudo service nftables stop
sudo rc-update del nftables
修改 docker 服务配置文件,禁用 iptables: 在 command_args 中添加 --iptables=false 参数,类似下面内容:
sudo vim /etc/init.d/docker
command_args="--iptables=false ${DOCKER_OPTS}"
重启 docker 服务:
sudo service docker restart
可将当前的用户名加入docker组,就可以不用sudo启动docker。
sudo usermod -aG docker username
输入 sudo -s
进入 root 账户(上面已加就不用sudo),查看 docker 信息:
docker info
Docker 配置国内源
创建 /etc/docker
目录:
sudo mkdir -p /etc/docker
创建 /etc/docker/daemon.json
:
sudo vim /etc/docker/daemon.json
添加如下内容:
{
"registry-mirrors": [
"https://ox288s4f.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://mirror.ccs.tencentyun.com"
]
}
重启 docker 服务:
sudo service docker restart
二,docker命令
#查看运行中的容器
docker ps
#查看所有容器
docker ps -a
#搜索镜像
docker search nginx
#下载镜像
docker pull nginx
#下载指定版本镜像
docker pull nginx:1.26.0
#查看所有镜像
docker images
#删除指定id的镜像
docker rmi e784f4560448
#运行一个新容器
docker run nginx
#停止容器
docker stop keen_blackwell
#启动容器
docker start 592
#重启容器
docker restart 592
#查看容器资源占用情况
docker stats 592
#查看容器日志
docker logs 592
#删除指定容器
docker rm 592
#强制删除指定容器
docker rm -f 592
# 后台启动容器
docker run -d --name mynginx nginx
# 后台启动并暴露端口
docker run -d --name mynginx -p 80:80 nginx
# 进入容器内部
docker exec -it mynginx /bin/bash
# 提交容器变化打成一个新的镜像
docker commit -m "update index.html" mynginx mynginx:v1.0
# 保存镜像为指定文件
docker save -o mynginx.tar mynginx:v1.0
# 删除多个镜像
docker rmi bde7d154a67f 94543a6c1aef e784f4560448
# 加载镜像
docker load -i mynginx.tar
# 登录 docker hub
docker login
# 重新给镜像打标签
docker tag mynginx:v1.0 leifengyang/mynginx:v1.0
# 推送镜像
docker push leifengyang/mynginx:v1.0