docker使用笔记

修改记录:
24_0125_01 创建
25/01/25 整理
相关电子书籍链接

1.Docker 与容器

2.核心概念与安装配置

2.1 核心概念

2.2 docker 安装

ubuntu

使用官方的脚本自动安装

 curl -fsSL https://test.docker.com -o test-docker.sh
 sudo sh test-docker.sh

可能会失效

准备条件

#安装前先卸载操作系统默认安装的docker,
sudo apt-get remove docker docker-engine docker.io containerd runc

#安装必要支持
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

准备安装

#添加 Docker 官方 GPG key (可能国内现在访问会存在问题)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 阿里源(推荐使用阿里的gpg KEY)
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

#添加 apt 源:
#Docker官方源
echo "deb [arch=$(dpkg --print-architecture) 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


#阿里apt源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null


#更新源
sudo apt update
sudo apt-get update

安装Docker

#安装最新版本的Docker
sudo apt install docker-ce docker-ce-cli containerd.io
#等待安装完成

#查看Docker版本
sudo docker version

#查看Docker运行状态
sudo systemctl status docker

安装Docker 命令补全工具

sudo apt-get install bash-completion

sudo curl -L https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/bash/docker -o /etc/bash_completion.d/docker.sh

source /etc/bash_completion.d/docker.sh

允许非Root用户执行docker 命令

这时只有root权限才能使用,因此我们添加docker的用户组,把当前用户加入组中

sudo groupadd docker
sudo usermod -aG docker  $USER
newgrp docker       
最后一步 更新.bashrc文件

我们需要编辑 ~/.bashrc文件,并在文件末尾增加如下一行,如果不在.bashrc文件中增加下面这一行命令

#如果没有此行命令,你会发现,当你每次打开新的终端
#你都必须先执行一次 “newgrp docker” 命令
#否则当前用户还是不可以执行docker命令
groupadd -f docker

修改docker 默认的存储路径

官方文档的修改办法是编辑 /etc/docker/daemon.json 文件:

vi /etc/docker/daemon.json

默认情况下这个配置文件是没有的,这里实际也就是新建一个,然后写入以下内容:

{  
  "data-root": "/mhxw/docker",
}

每项都用“,”分割

此文件还涉及默认源的设定,如果设定了国内源,那么实际就是在源地址下方加一行,写成:

{  
  "registry-mirrors": ["http://hub-mirror.c.163.com"],  
  "data-root": "/mhxw/docker"  
}

保存退出,然后重启 docker 服务:

systemctl restart docker

2.3 配置Docker 服务

Docker Hello World

此时,验证

docker container run hello-world

运行交互式的容器

我们通过 docker 的两个参数 -i -t,让 docker 运行的容器实现**“对话”**的能力:

runoob@runoob:~$ docker run -i -t ubuntu:15.10 /bin/bash
root@0123ce188bd8:/#

各个参数解析:

  • -t: 在新容器内指定一个伪终端或终端。
  • -i: 允许你对容器内的标准输入 (STDIN) 进行交互。

我们尝试在容器中运行命令 cat /proc/versionls分别查看当前系统的版本信息和当前目录下的文件列表

我们需要确认容器有在运行,可以通过 docker ps 来查看:

runoob@runoob:~$ docker ps
CONTAINER ID        IMAGE                  COMMAND              
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值