docker使用教程

docker使用教程

安装docker

  1. 更新系统:首先,确保你的系统是最新的。打开终端,并执行以下命令:

    sudo apt update
    sudo apt upgrade
    
  2. 安装Docker依赖:接下来,安装Docker所需的一些依赖包。在终端中执行以下命令:

    sudo apt install apt-transport-https ca-certificates curl software-properties-common
    
  3. 添加Docker官方GPG密钥:为了验证下载的软件包的完整性,需要添加Docker官方的GPG密钥。在终端中执行以下命令:

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    
  4. 添加Docker软件源:添加Docker的软件源,以便系统能够从官方仓库中下载Docker软件包。在终端中执行以下命令:

    echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    
  5. 更新软件包列表:更新软件包列表以获取最新的可用软件包。在终端中执行以下命令:

    sudo apt update
    
  6. 安装Docker引擎:现在,可以安装Docker引擎了。在终端中执行以下命令:

    sudo apt install docker-ce docker-ce-cli containerd.io
    
  7. 启动Docker服务:安装完成后,Docker服务将自动启动。如果没有启动,可以在终端中执行以下命令手动启动:

    sudo systemctl start docker
    
  8. 验证安装:最后,验证Docker是否成功安装。在终端中执行以下命令:

    sudo docker run hello-world
    

安装Docker Compose

Docker是一个开源的容器化平台,它允许开发人员将应用程序以及其依赖项打包成一个独立的容器,使其能够在任何环境中运行,无论是开发环境、测试环境还是生产环境。Docker在容器内部提供了隔离性和轻量级的进程,使得应用程序能够以一致的方式运行,无论在哪个操作系统上。

而Docker Compose则是一个用于定义和管理多个Docker容器的工具。它使用YAML文件(称为docker-compose.yml)来定义多个容器之间的关系和配置。通过Docker Compose,你可以轻松地启动、停止、构建和删除多个容器,使得在开发和测试环境中部署和管理多个容器变得更加简单。

Docker和Docker Compose之间的联系在于,它们都是用于容器化应用程序的工具。Docker提供了容器化的基础设施,允许你将应用程序及其依赖项打包为一个独立的容器;而Docker Compose则建立在Docker之上,允许你定义和管理多个容器,使它们能够协同工作。通过Docker Compose,你可以将多个容器作为一个整体来管理和部署,确保容器之间的依赖关系和配置正确。

总结起来,Docker是一个容器化平台,用于构建和管理容器;而Docker Compose是一个工具,用于定义和管理多个容器。它们在容器化应用程序方面紧密相关,可以一起使用来简化应用程序的开发、部署和管理过程。

  1. 下载Docker Compose二进制文件:

    sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
  2. 添加执行权限:

    sudo chmod +x /usr/local/bin/docker-compose
    
  3. 验证安装:

    docker-compose --version
    

docker常用命令

  1. docker run: 在容器中运行一个镜像。

  • 参数示例:

    docker run -d -p 8080:80 nginx
    

    其中-d表示在后台运行,-p表示将主机的8080端口映射到容器的80端口。

  1. docker pull: 从仓库中拉取一个镜像。

  • 参数示例:

    docker pull ubuntu:latest
    

    其中ubuntu是镜像的名称,latest是标签。

  1. docker build: 根据 Dockerfile 构建一个镜像。

  • 参数示例:

    docker build -t myimage
    
    .,其中-t指定镜像的名称和标签,.表示在当前目录下查找 Dockerfile。
    
  1. docker images: 查看所有本地的镜像。

  • 参数示例:

    docker images -a
    

    ,其中-a表示显示所有镜像,包括中间层镜像。

  1. docker ps: 查看运行中的容器。

  • 参数示例:

    docker ps -a
    

    ,其中-a表示显示所有容器,包括停止的容器。

  1. docker stop: 停止运行中的容器。

  • 参数示例:

    docker stop container_id
    

    其中container_id是容器的ID或名称。

  1. docker start: 启动已停止的容器。

  • 参数示例:

    docker start container_id
    

    其中container_id是容器的ID或名称。

  1. docker restart: 重启容器。

  • 参数示例:

    docker restart container_id
    

    其中container_id是容器的ID或名称。

  1. docker rm: 删除容器。

  • 参数示例:

    docker rm container_id
    

    其中container_id是容器的ID或名称。

  1. docker rmi: 删除镜像。

  • 参数示例:

    ```
    docker rmi image_id
    ```
      
    其中image_id是镜像的ID或名称。
    
  1. docker exec: 在运行中的容器中执行命令。

  • 参数示例:

    ```
    docker exec -it container_id bash
    ```
      
    其中-it表示进入交互终端,bash表示在容器中执行的命令。
    
  1. docker cp: 将文件或文件夹复制到容器中。

  • 参数示例:

    ```
    docker cp local_file_path container_id:/container_path
    ```
      
    其中local_file_path是本地文件路径,container_id是容器的ID,/container_path是容器中目标路径。
    
  1. docker logs: 查看容器的日志输出。

  • 参数示例:

    ```
    docker logs container_id
    ```
      
    其中container_id是容器的ID或名称。
    
  1. docker inspect: 查看容器或镜像的详细信息。

  • 参数示例:

    ```
    docker inspect container_id
    ```
      
    其中container_id是容器的ID或名称。
    
  1. docker network: 管理 Docker 网络。

    参数示例:

    docker network ls
    

    显示所有网络。

  2. docker exec -it ID /bin/sh:进入某个容器内部

    参数示例:

    docker exec -it 容器ID /bin/sh  
    

Docker Compose常用命令

安装Docker Compose

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  1. docker-compose up: 构建并启动Compose文件中定义的所有服务。

  • 参数示例:

    docker-compose up -d
    

    其中-d表示在后台启动。

  1. docker-compose down: 停止并删除所有Compose文件中定义的服务。

  • 参数示例:

    docker-compose down -v
    

    其中-v表示连同所有相关的容器、网络和卷一起删除。

  1. docker-compose build: 根据Compose文件中的配置重新构建服务的镜像。

  • 参数示例:

    docker-compose build service_name
    

    其中service_name是Compose文件中定义的服务的名称。

  1. docker-compose start: 启动已经创建的Compose服务。

  • 参数示例:

    docker-compose start service_name
    

    其中service_name是Compose文件中定义的服务的名称。

  1. docker-compose stop: 停止已经创建的Compose服务。

  • 参数示例:

    docker-compose stop service_name
    

    其中service_name是Compose文件中定义的服务的名称。

  1. docker-compose restart: 重启已经创建的Compose服务。

  • 参数示例:

    docker-compose restart service_name
    

    其中service_name是Compose文件中定义的服务的名称。

  1. docker-compose ps: 查看Compose文件中定义的所有服务的状态。

  • 参数示例:

    docker-compose ps
    

    无需附加参数。

  1. docker-compose logs: 查看Compose文件中定义的服务的日志输出。

    • 参数示例:

      docker-compose logs service_name
      

      其中service_name是Compose文件中定义的服务的名称。

使用docker搭建自己的电报机器人

首先安装docker和docker-compose,详见1

拉取最新 Chibi Docker 镜像:

docker pull pysergio/chibi:latest

使用必要的环境变量运行 Docker 容器:

docker run -d
-e TELEGRAM_BOT_TOKEN=<your_telegram_token>
-e OPENAI_API_KEY=<your_chatgpt_api_key>
--name chibi
pysergio/chibi:latest
  • docker run: 这个命令告诉 Docker 创建并运行一个新容器。

  • -d: 这个选项是指示 Docker 在后台(分离模式)运行容器。容器将在后台运行而不会阻塞终端窗口。

  • -e TELEGRAM_BOT_TOKEN=<your_telegram_token>: 这个选项用来设置一个名为 “TELEGRAM_BOT_TOKEN” 的环境变量,并将其值设置为 “<your_telegram_token>”。环境变量是在容器运行时可用的变量,用于在容器内部配置应用程序。

  • -e OPENAI_API_KEY=<your_chatgpt_api_key>: 这个选项用来设置一个名为 “OPENAI_API_KEY” 的环境变量,并将其值设置为 “<your_chatgpt_api_key>”。同样,这将在容器内部设置一个用于认证 OpenAI ChatGPT API 的 API 密钥。

  • --name chibi: 这个选项指定容器的名字,将其命名为 “chibi”。

  • pysergio/chibi:latest: 这个是容器的映像名称。Docker 将基于这个映像来创建和运行容器。在这个例子中,使用的是名为 “chibi” 的映像的最新版本。

将<your_telegram_token>、<your_chatgpt_api_key>替换为适当的值。

使用docker将chatgpt接入微信

首先安装docker和docker-compose,详见1

执行以下命令下载 docker-compose.yml

wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml

接着打开文件,修改或添加所需的配置,如 OPEN_AI_API_KEYGROUP_NAME_WHITE_LIST 等必填配置

在 docker-compose.yml 所在目录下执行以下命令启动容器:

sudo docker compose up -d

运行 sudo docker ps 能查看到 NAMES 为 chatgpt-on-wechat 的容器即表示运行成功。

最后运行以下命令可查看容器运行日志,扫描日志中的二维码即可完成登录:

sudo docker logs -f chatgpt-on-wechat
  • 17
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值