debian安装docker

官方脚本安装docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

docker安装步骤

如使用官方脚本安装, 则可跳过该步骤

  1. 安装通过HTTPS添加新存储库所需的软件包
    sudo apt update
    sudo apt install curl apt-transport-https ca-certificates gnupg2 software-properties-common
  2. 使用以下curl命令导入存储库的GPG密钥
    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
  3. 查看系统版本信息 lsb_release -cs
    在这里插入图片描述
  4. 将稳定的Docker APT存储库添加到系统的软件存储库列表中
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
    这里我本地是buster,故我这边的指令等价为:
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian buster stable"
  5. 安装最新版本的Docker CE
    sudo apt install docker-ce
  6. 安装完成后,Docker服务将自动启动。
    sudo systemctl status docker
    在这里插入图片描述
  7. 查看docker版本
    在这里插入图片描述

docker-compose安装

  1. 访问docker官网, 获取下载连接
    在这里插入图片描述

    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

  2. 设置权限 sudo chmod +x /usr/local/bin/docker-compose

  3. 查看docker-compose版本 docker-compose --version

其他

免sudo执行docker指令

默认情况下,只有root 用户和具有sudo权限的用户才能执行Docker命令。
在这里插入图片描述
在这里插入图片描述
如果要在不预先添加的情况下执行Docker命令,则sudo需要将用户添加到在安装Docker CE软件包期间创建的docker组。
sudo usermod -aG docker $USER

$USER是一个保存用户名的环境变量。
注销并重新登录,再次执行docker ps,可免sudo执行。

启动docker-compose服务报错

报错内容如下:
ERROR: for [containerName] Cannot start service mysql3307: driver failed programming external connectivity on endpoint [containerName] (13195d71b124ac60cb955ab65d708c45e81b68b3c72639b9ef1b9a871523030b): Bind for 0.0.0.0:3307 failed: port is already allocated

ERROR: for [serviceName] Cannot start service [serviceName]: driver failed programming external connectivity on endpoint [containerName] (13195d71b124ac60cb955ab65d708c45e81b68b3c72639b9ef1b9a871523030b): Bind for 0.0.0.0:3307 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.
在这里插入图片描述

解决:
重启docker服务后再启动容器
systemctl restart docker

其他问题

安装docker过程中踩的几个坑


版权声明:本文为zzsan原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。