docker基础
1.安装docker
- 卸载历史版本
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-config-manager \ --add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 更新软件包索引
yum makecache fast
- 安装docker
yum install docker-ce docker-ce-cli containerd.io
- 判断安装是否安装成功
[root@Testnet_2 ~]# systemctl start docker [root@Testnet_2 ~]# docker version
- 运行hello-world
docker run hello-world
2.docker 基础语法
- 启动docker
systemctl start docker
- docker版本及信息
docker version
docker info - 运行镜像
docker run hello-world #当镜像不存在时docker会自动到镜像仓库搜索并下载
- 查看当前有哪些镜像
docker images # -a参数表示all 所有镜像,-f/--filter string参数表示过滤,-q 表示只显示镜像id,docker 镜像名可以用id代替
- 查看当前运行了哪些镜像
docker ps # -a参数表示历史运行过的镜像记录
- 搜索及下载镜像
docker search hello-world docker pull hello-world
- 运行centos镜像
docker run -it centos /bin/bash # -it表示打开交互界面。后台打开centos必须打开/bin/bash,否则镜像判断无进程会自动关闭。 -d 参数表示后台运行
-p 8080:8080 参数表示设置访问端口 主机端口:容器端口
交互界面下输入exit退出并关闭镜像,按Ctrl+q+p可以退出交互不关闭镜像 - 配置阿里镜像加速
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://a8i12gdx.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
- 删除容器
docker rm -f hello-world #删除容器,不能删除正在运行的容器,-f参数表示强制删除正在运行的容器
docker rm -f $(docker ps -aq)#删除所有容器 - 开始、重启及关闭容器
docker start 容器ID docker restart 容器ID docker stop 容器ID
docker kill 容器ID # 强制关闭容器 - 显示日志
docker logs -tf hello-world
- 参考正在运行的容器进程
docker top 容器ID
- 查看容器元数据
docker inspect 容器ID
- 进入当前正在运行的容器
docker exec 容器ID #进入容器后开启一个心的终端,可以在里面操作(常用)docker exec命令+容器ID+linux命令 可以对容器进行操作 docker attach 容器ID #进入容器正在执行的终端,不启动新的进程
- 从容器内拷贝文件到主机
docker cp 容器ID:文件路径 主机文件夹路径 #容器关闭时也可以拷贝