最新docker多系统安装技术

news/2024/11/7 20:54:05/

在Ubuntu操作系统中安装Docker

在Ubuntu操作系统中安装Docker的步骤如下。

1.卸载旧版本Docker

卸载旧版本Docker的命令如下:

$ sudo apt-get remove docker
docker-engine
docker.io

2.使用脚本自动安装

在测试或开发环境中,Docker官方为了简化安装流程,也提供了一套便捷的安装脚本,在Ubuntu操作系统上可以使用这套脚本安装,也可以通过–mirror选项使用国内源进行安装:

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun

3.建立Docker用户组(非必选操作)

默认情况下,Docker命令会使用UNIX socket与Docker引擎通信。而只有root用户和Docker用户组的用户才可以访问Docker引擎的UNIX socket。出于安全考虑,Linux系统一般不会直接使用root用户登录。因此,更好的做法是将需要使用Docker的用户加入Docker用户组。

建立并将当前用户加入Docker用户组:

$ sudo groupadd docker
$ sudo usermod -aG docker $USER

4.测试Docker是否安装成功
测试Docker是否安装成功的命令如下:

$ docker run --rm hello-world

Unable to find image ‘hello-world:latest’ locally latest: Pulling from
library/hello-world b8dfde127a29: Pull complete Digest:
sha256:308866a43596e83578c7dfa15e27a73011bdd402185a84c5cd7f32a88b501a24
Status: Downloaded newer image for hello-world:latest

Hello from Docker! This message shows that your installation appears
to be working correctly.

To generate this message, Docker took the following steps:

  1. The Docker client contacted the Docker daemon.
  2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
    (amd64)
  3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
  4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/get-started/

若能正常输出以上信息,则说明安装成功。

5.镜像加速

目前,主流的Linux发行版均已使用systemd进行服务管理,这里介绍在systemd的Linux发行版中配置镜像加速器的方法。

在/etc/docker/daemon.json中写入如下内容(如果文件不存在,则新建该文件):

{ “registry-mirrors”: [
“https://hub-mirror.c.163.com”,
“https://mirror.baidubce.com” ] }

注意,一定要保证该文件符合JSON规范,否则Docker将不能启动。之后,重新启动服务。

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

6.安装Docker Compose

Docker Compose可以通过Python的包管理工具PIP进行安装,也可以直接下载、使用编译好的二进制文件。

$ sudo pip install -U docker-compose

在Windows系统中安装Docker

1.安装

从Docker官网下载“Docker Desktop Installer.exe”。下载成功之后,双击“Docker Desktop Installer.exe”按钮开始安装,如图2-1所示。
在这里插入图片描述

2.运行

在Windows搜索栏输入“Docker”,单击“Docker Desktop”按钮运行(可能需要鼠标右键单击“Docker Desktop”,然后选择“以管理员身份运行”选项),如图2-2所示。

在这里插入图片描述
Docker启动后,会在Windows任务栏出现鲸鱼图标。等待片刻,当鲸鱼图标静止时,Docker启动成功,之后就可以打开PowerShell使用Docker了,如图2-3所示。

在这里插入图片描述

3.镜像加速

使用Windows 10的用户可右键单击任务栏托盘中的Docker图标,在菜单中选择“Settings”选项,打开配置窗口后,在左侧导航菜单中选择“Docker Engine”,然后将镜像地址填入配置界面中,之后单击“Apply&Restart”按钮保存,Docker就会重启并应用配置的镜像地址,如图2-4所示。

在这里插入图片描述

4.Docker Compose

Docker Desktop for Windows自带docker-compose二进制文件,安装Docker之后可以直接使用,如图2-5所示。
在这里插入图片描述


http://www.ppmy.cn/news/1059914.html

相关文章

磁盘阵列/视频集中存储/安防监控视频智能分析平台新功能:人员聚集

人工智能技术已经越来越多地融入到视频监控领域中,近期我们也发布了基于AI智能视频云存储/安防监控视频AI智能分析平台的众多新功能,该平台内置多种AI算法,可对实时视频中的人脸、人体、车辆、物体等进行检测、跟踪与抓拍,支持口罩…

Spring+redis集成redis缓存

1、引入maven依赖 <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.7.0</version></dependency><dependency><groupId>org.springframework.data</groupId><art…

Go与Rust的对比与分析

Rust 和 Go 是两种现代语言&#xff0c;近年来获得了巨大的关注&#xff0c;每种语言都有自己独特的优势和权衡。在这篇文章中&#xff0c;我们将深入探讨 Rust 和 Go 之间的差异&#xff0c;重点关注性能、语言功能和其他关键因素&#xff0c;以帮助您针对您的开发需求做出明智…

MySQL三大日志(binlog、redo log和undo log)详解

1.redo log redo log是InnoDB存储引擎层的日志&#xff0c;又称重做日志文件。 用于记录事务操作的变化&#xff0c;记录的是数据修改之后的值&#xff0c;不管事务是否提交都会记录下来 redo log包括两部分&#xff1a;一个是内存中的日志缓冲(redo log buffer)&#xff0c;另…

基于XL32F003单片机的可控硅调光方案

可控硅调光是一种用于调节电源输出电压的技术&#xff0c;被广泛应用于各种场景。它主要通过改变波形的导通角度来调节输出电压的大小&#xff0c;从而实现对照明设备亮度的控制。在照明市场占据了很大的调光市场。 可控硅调光的兼容性强&#xff0c;应用范围广。例如&#xff…

自动化测试之Junit

Junit引入注解参数化单参数多参数方法传参 测试用例执行顺序断言测试套件 Junit引入 Junit来编写和组织自动化测试用例&#xff0c;使用Selenium来实际模拟用户与Web应用程序的交互。也就是使用JUnit的测试功能来管理和运行Selenium测试。常见的做法是&#xff0c;使用JUnit作…

多线程MySQL分页查询-性能优化

MySQL分页查询优化 一、背景二、原因三、解决四、原理探究 https://blog.csdn.net/hollis_chuang/article/details/130570281 总结&#xff1a; 一、背景 业务背景&#xff1a;给C端10万级别的用户&#xff0c;同时发送活动消息&#xff0c;活动消息分为6类。数据背景&#…

Mybatis-plus中操作JSON字段

1.实体类上要加上自动映射 TableName(value "school", autoResultMap true)2.json字段上加上json处理器 TableField(value "cover_url", typeHandler JacksonTypeHandler.class)private List<String> cover_url;参考博客 http://www.dedeyun.co…