前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux中安装docker

linux中安装docker

原创
作者头像
悟空宇
发布2024-04-16 21:24:25
4.7K0
发布2024-04-16 21:24:25
举报
文章被收录于专栏:干JAVA的日常

旧话重提,有些日子没有安装docker了,这也导致忘记了如何操作,踩了很多坑,特此记录一下,如果还能帮到大家就更好了,如果帮到江湖朋友了,就点个赞,在此谢过

一、Docker安装环境检查

以centOS 7为例,首先要确定Linux版本

新版本的Docker对Linux系统版本有一定的要求。如果Linux的发行版系统是centOS,安装最新版的docker需要centOS 7以上的系统。

在Docker安装帮助页面查看支持的系统版本。

可以通过命令查看linux系统信息

代码语言:bash
复制
cat /etc/os-release

二、docker安装

1、安装必要的一些系统工具

代码语言:bash
复制
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

2、添加软件源信息

代码语言:bash
复制
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、更新yum索引列表并安装Docker引擎

代码语言:bash
复制
sudo yum makecache fast

4、yum索引列表没有更新可以直接使用yum makecache(若有报错请翻阅第四部分第二条)

docker-ce:社区版的,docker-ee:企业版的

代码语言:bash
复制
sudo yum install docker-ce

5、安装过程中会提示确认,输入y以确认

6、开启Docker服务

代码语言:bash
复制
sudo service docker start

代码语言:bash
复制
systemctl start docker

7、测试是否安装成功

通过命令

代码语言:bash
复制
docker version

若安装成功会提示以下信息

8、测试Hello World

代码语言:bash
复制
docker run hello-world 

代码语言:bash
复制
sudo docker run hello-world

此时会有拉去成功的签名信息以及欢迎语句,当出现"Hello from Docker!”时,代表我们镜像安装成功。

9、查看下载的hello-world镜像

代码语言:bash
复制
docker images

代码语言:bash
复制
sudo docker images

三、常用命令

1、列出容器

代码语言:bash
复制
命令:docker ps [OPTIONS]

OPTIONS说明:

-a :显示所有的容器,包括未运行的。

-f :根据条件过滤显示的内容。

--format :指定返回值的模板文件。

-l :显示最近创建的容器。

-n :列出最近创建的n个容器。

--no-trunc :不截断输出。

-q :静默模式,只显示容器编号。

-s :显示总的文件大小。

2、进入容器<请先看完两者区别再使用>

(1)attach命令

attach是Docker自带的命令,命令的格式为:

docker attach [OPTIONS] CONTAINER

(2)exec命令

从Docker的1.3版本起,Docker提供了更加方便的工具exec命令,可以在运行容器内直接执行任意命令。命令格式为:

docker exec [OPTIONS] CONTAINER COMMAND [ARG…]

区别:

当多个窗口同是attach到同一个容器的时候,所有窗口都会同步显示;当某个窗口因命令阻塞时,其他窗口也无法执行操作。

可以使用 docker exec -it 容器id /bin/bash 进入容器并开启一个新的bash终端。 退出容器终端时,不会导致容器的停止。

使用 docker attach 容器id 进入正在执行容器,不会启动新的终端, 退出容器时,会导致容器的停止。

四、常见问题解决方法

1、添加源时遇到如下报错

解决方法:遇到该报错,基本是由于没有配置dns,导致无法解析域名,配置dns后便可以解决

2、在安装时若报错如下

代码语言:bash
复制
。。。。。。
  - 软件包 podman-3.1.0-0.13.module_el8.5.0+733+9bb5dffa.x86_64 需要 runc >= 1.0.0-57,但没有提供者可以被安装
。。。。。。
  - 软件包 docker-ce-3:20.10.11-3.el8.x86_64 需要 containerd.io >= 1.4.1,但没有提供者可以被安装
。。。。。。
  - 软件包 podman-catatonit-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64 需要 podman = 1:3.4.1-3.module_el8.6.0+954+963caf36,但没有提供者可以被安装
  - 软件包 podman-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64 需要 runc >= 1.0.0-57,但没有提供者可以被安装
(尝试在命令行中添加 '--allowerasing' 来替换冲突的软件包 或 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用软件包的最佳候选)

此时可以使用如下命令来解决这个问题:

代码语言:bash
复制
sudo yum install --allowerasing docker-ce docker-ce-cli containerd.io

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Docker安装环境检查
  • 二、docker安装
  • 三、常用命令
  • 四、常见问题解决方法
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档