Docker 和Docker-compose常用命令
文章目录
- 前言
- 一、Docker 安装
- - 卸载(可选)
- - Ubuntu 安装
- - CentOS 7 安装
- - 配置镜像加速器
- - 启动Docker
- - 删除Docker
- 二、Dcker命令
- - 查看docker 版本
- - 查看docker 命令
- - 查看docker 服务端与客户端版本详情
- - 启动docker进程
- - 关闭docker
- - 重启docker
- - 查看docker运行状态
- - drocker开机自启
- - 查看镜像---本地的
- - 搜索镜像--首先本地-默认的地址
- - 拉取镜像
- - 删除镜像
- - 查看容器
- - 根据xxxx镜像,创建一个yyyy容器只是创建,没有运行
- - 启动容器
- - 停止容器
- - 重启容器
- - 删除容器
- - 查看容器日志
- - 进入命令
- 容器查看指令
- DockerFile
- - 什么是 Dockerfile?
- - portainer -dockerUI 进行docker的页面操作,不用命令行
- 二、使用步骤
- 1.引入库
- 2.读入数据
- 总结
前言
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流
行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
下面记录的是docker常用的一些命令
一、Docker 安装
- 卸载(可选)
如果之前有安装需要重新安装的话
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotatedocker-logrotate docker-engine
- Ubuntu 安装
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
- CentOS 7 安装
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
# 按需安装 sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start
- 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
到阿里云官网找属于自己的加速器地址(注册即有,免费的,推荐自己去注册一个) https://cr.console.aliyun.com/cn-beijing/instances/mirrors
例如:
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器,其中的registry-mirrors的https://cx9q1qal.mirror.aliyuncs.com是我去注册免费赠送的
# step 1
sudo mkdir -p /etc/docker
# step 2
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://cx9q1qal.mirror.aliyuncs.com"]
}
EOF
# step 3
sudo systemctl daemon-reload
# step 4
sudo systemctl restart docker
- 启动Docker
启动Docker的命令:
sudo systemctl start docker
通过运行hello-world镜像来验证是否正确安装了Docker Engine-Community。
// 拉取镜像
sudo docker pull hello-world
// 执行hello-world
sudo docker run hello-world
如果执行之后,控制台显示如下信息,则说明Docker安装和启动成功:
[root@localhost ~]# docker run hello-worldHello from Docker!
This message shows that your installation appears to be working correctly.
除了启动Docker,一些其他启动相关的命令:
- 守护进程重启:systemctl daemon-reload
- 重启Docker服务:systemctl restart docker / service docker restart
- 关闭Docker服务:systemctl stop docker / service docker stop
- 删除Docker
删除安装包:
yum remove docker-ce
删除镜像、容器、配置文件等内容:
rm -rf /var/lib/docker
二、Dcker命令
- 查看docker 版本
docker -v
- 查看docker 命令
docker --help
- 查看docker 服务端与客户端版本详情
docker version
- 启动docker进程
systemctl start docker
- 关闭docker
systemctl stop docker
- 重启docker
systemctl restart docker
- 查看docker运行状态
systemctl status docker
- drocker开机自启
systemct1 enable docker
- 查看镜像—本地的
docker images
- 搜索镜像–首先本地-默认的地址
docker search tomcat
- 拉取镜像
docker pull xxx #最新版本
docker pull xxx :7 #最新版本
- 删除镜像
docker rmi 镜像id
docker rm $(docker ps -a -q) #删除所有镜像
- 查看容器
docker ps #查看在运行的容器
docker ps -a #查看所有的容器
docker ps l grep xxx # 过滤查看置顶的容器
- 根据xxxx镜像,创建一个yyyy容器只是创建,没有运行
docker create–name=yyyy xxxxx
- 启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]-d: 后台运行容器并返回容器 ID。
-it: 交互式运行容器,分配一个伪终端。
--name: 给容器指定一个名称。
-p: 端口映射,格式为 host_port:container_port。
-v: 挂载卷,格式为 host_dir:container_dir。
--rm: 容器停止后自动删除容器。
--env 或 -e: 设置环境变量。
--network: 指定容器的网络模式。
--restart: 容器的重启策略(如 no、on-failure、always、unless-stopped)。
-u: 指定用户。
docker run -d ubuntu # 后台运行容器
docker run -it ubuntu /bin/bash #交互式运行并分配终端
docker run --name my_container ubuntu #指定容器名称
docker run -p 8080:80 nginx #端口映射
docker run -v /host/data:/container/data ubuntu #挂载卷
docker run -e MY_ENV_VAR=my_value ubuntu #设置环境变量
docker run --network host nginx #使用网络模式
docker run --restart always nginx #指定重启策略
docker run -u user123 ubuntu #指定用户
docker run -d -p 8080:80 -v /host/data:/data --name webserver nginx #组合多个选项
- 停止容器
docker stop container _id/container_name # 停止容器
docker stop $(docker ps -a -q) #停止所有容器
- 重启容器
docker restart container _id/container_name
- 删除容器
docker rm container _id/container_name # 删除没有运行的容器
docker rm -f container _id/container_name #强制删除容器
docker rm $(docker ps -a -q) #删除所有容器
- 查看容器日志
docker log -f container _id/container_name # -f 实时日志
- 进入命令
docker exec -it container _id/container_name /bin/bash
容器查看指令
docker inspect 命令用于获取 Docker 对象(容器、镜像、卷、网络等)的详细信息。
docker inspect 命令返回 JSON 格式的详细信息,可以帮助用户了解对象的配置和状态。
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS 说明:-f, --format: 使用 Go 模板语法格式化输出。
--type: 返回指定类型的对象信息(
可选类型:container、image、network、volume)。
1、检查容器docker inspect my_container
返回 my_container 容器的详细信息。2、检查镜像docker inspect my_image
返回 my_image 镜像的详细信息。3、检查卷docker inspect my_volume
返回 my_volume 卷的详细信息。4、检查网络docker inspect my_network
返回 my_network 网络的详细信息。5、格式化输出docker inspect --format '{{ .State.Running }}' my_container
返回 my_container 容器的运行状态,格式化输出为布尔值。6、检查多个对象docker inspect my_container my_image
返回 my_container 容器和 my_image 镜像的详细信息。实例输出
容器信息:docker inspect my_container
DockerFile
- 什么是 Dockerfile?
Dockerfile 是一个文本文件,包含了构建 Docker 镜像的所有指令。
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
通过定义一系列命令和参数,Dockerfile 指导 Docker 构建一个自定义的镜像。
- portainer -dockerUI 进行docker的页面操作,不用命令行
1. 搜索portainer镜像
docker search portainer2. 拉取portainer镜像
docker pull portainer/portainer-ce3. 启动portainer容器
# 启动镜像
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /dockerData/portainer:/data --restart=always --name portainer portainer/portainer-ce:latest
二、使用步骤
1.引入库
代码如下(示例):
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
2.读入数据
代码如下(示例):
data = pd.read_csv('https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())
该处使用的url网络请求的数据。
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
