Docker最全教程——从理论到实战(十二)
前言
Ubuntu是一个以桌面应用为主的开源GNU/Linux操作系统,应用很广。本篇主要讲述Ubuntu下使用SSH远程登录并安装Docker,并且提供了Docker安装的两种方式,希望对大家有所帮助。
拥抱Linux,大家可以从Ubuntu开始!
Ubuntu下安装Docker
首先我们需要准备一个Ubuntu的环境。这里笔者推荐使用Hyper-V来快速安装Ubuntu。
使用Hyper-V快速安装Ubuntu
这里笔者推荐使用Hyper-V快速安装Ubuntu,如果已知晓或者已准备好Ubuntu系统的可以跳过此节。
注意:如果C盘空间有限,在创建之前,请修改默认的Hyper-V设置中的虚拟硬盘和虚拟机的位置。
首先,我们需要打开Hyper-V管理器:
然后点击右侧的【快速创建】,并在弹出的界面中选【Ubuntu】:
最后,点击创建虚拟机,Hyper-V管理器就会进行自动下载镜像并进行安装,如果已下载,则会从存档文件中获取并创建:
创建完成后如图所示:
安装完成后,我们就可以连接刚安装好的Ubuntu系统了(第一次启动需要点时间):
接下来就可以按照引导界面来完成系统设置,进入系统主界面了:
配置外网
接下来安装Docker我们需要配置外网。如果无法访问外网,我们需要配置Hyper-V的虚拟交换机。
首先,我们需要在Hyper-V管理器打开【虚拟交换机管理器】:
点开后,我们点击【新建虚拟网络交换机】,创建一个外部虚拟交换机:
虚拟交换机创建完成后,我们需要设置虚拟机的网络适配器为刚才所创建的交换机:
设置完成后,我们连接并进入系统,使用自带的火狐浏览器打开百度进行确认:
使用SSH远程Ubuntu
SSH是一种网络协议,用于计算机之间的加密登录。
在Linux系统的操作上,SSH的使用是必备技能。在往后的Docker管理和操作方面,我们也离不开它。
在ubuntu上开启SSH服务
整个过程比较简单,主要分为以下步骤:
1.进入ubuntu操作系统,打开Terminal:
2.输入“sudo su”,切换到root账户
3.安装openssh-server。
OpenSSH是Secure Shell(SSH)协议工具的免费版本,用于远程控制或在计算机之间传输文件。OpenSSH提供服务器守护程序和客户端工具,以促进安全,加密的远程控制和文件传输操作,有效地取代传统工具。
输入“apt-get install openssh-server”进行安装:
ssh-server配置文件位于/ etc/ssh/sshd_config,我们可以在此定义SSH的服务端口,默认端口为22。
同时,我们可以用以下命令来停止和启动SSH:
/etc/init.d/ssh stop
/etc/init.d/ssh start
如何判断ssh-server正常启动,可以使用以下命令:
ps -e |grep ssh
如上图所示,由于OpenSSH使用sshd来持续监听来自任何客户端工具的客户端连接,当发生连接请求时,sshd会根据连接的客户端工具的类型设置正确的连接。因此进程中存在sshd则表示正常启动。
使用SSH远程登录
这里我们使用windows 10操作系统进行演示。
1.安装ssh客户端,这里我们使用PuTTY。因为免费。
下载地址:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
2.接下来,我们使用账户进行SSH远程登录。
a) 获取服务端IP,可通过右上角的网络图标查看:
b) 打开命令窗口或者powershell窗口
c) 输入ssh命令进行登录。
ssh可以通过账号、公钥登录,这里我们使用账号登录:
ssh test@172.16.3.27
如果不是使用默认端口,则需使用-p参数指定端口。登录成功之后如上图所示,注意输入密码时键盘键入内容不会有任何显示或掩码提示。连接完成后,我们真的就可以为所欲为了。比如安装Docker。
安装Docker
Docker在Linux环境下的安装推荐以下两种方式:
使用存储库安装
1.切换到root账户(为了安装方便)
2.更新apt包索引
apt-get update
3.允许apt通过HTTPS安装
apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
4.添加Docker的官方GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –
apt-key fingerprint 0EBFCD88
5.设置稳定存储库
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
注意:lsb_release -cs子命令返回Ubuntu发行版的名称
6.更新apt包索引
apt-get update
7.安装最新版本的Docker CE和containerd
apt-get install docker-ce docker-ce-cli containerd.io
注意:通过以下命令可以安装特定版本:apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
8.按照我行行情,开始附加高级魔法,运行hello world!
docker run hello-world
使用快捷脚本安装
可以使用以下命令清除旧版本或者之前的安装:
apt-get remove docker-ce docker-ce-cli containerd.io docker docker-engine docker.io containerd runc
1.切换到root账户(为了安装方便)
sudo su
2.使用便捷脚本安装
Docker在get.docker.com 和test.docker.com上提供了便捷脚本,用于快速,非交互地将Docker CE的边缘和测试版本安装到开发环境中。脚本的源代码位于 docker-install存储库中。
注意:
- 尽量不要在生产环境使用这些脚本
- 脚本需要root或sudo权限才能运行。因此,在运行脚本之前,应仔细检查和审核脚本。
- 这些脚本会尝试检测您的Linux发行版和版本,并为您配置包管理系统。此外,脚本不允许您自定义任何安装参数。
- 脚本安装包管理器的所有依赖项和建议,而不要求确认。这可能会安装大量软件包,具体取决于主机的当前配置。
- 脚本默认安装Docker的最新版本。
a) 允许apt通过HTTPS安装
apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
b) 下载Docker安装的便捷脚本,然后执行
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
作者:雪雁
出处:http://www.cnblogs.com/codelove/
Docker最全教程——从理论到实战(十二)的更多相关文章
- Docker最全教程——从理论到实战(二十二)
前言 最近正在抽时间编写k8s的相关教程,很是费时,等相关内容初步完成后,再和大家分享.对于k8s,还是上云更为简单.稳定并且节省成本,因此我们需要对主流云服务的容器服务进行了解,以便更好地应用于生产 ...
- Docker最全教程——从理论到实战(二)
上篇内容链接: https://www.cnblogs.com/codelove/p/10030439.html Docker和ASP.NET Core Docker 正在逐渐成为容器行业的事实标准, ...
- Docker最全教程——从理论到实战(二十一)
前言 MySQL是目前最流行的开源的关系型数据库,MySQL的容器化之前有朋友投稿并且写过此块,本篇仅从笔者角度进行总结和编写. 目录 镜像说明 运行MySQL容器镜像 1.运行MySQL容器 ...
- Docker最全教程——从理论到实战(二十)
前言 各种编程语言均有其优势和生态,有兴趣的朋友完全可以涉猎多门语言.在平常的工作之中,也可以尝试选择相对适合的编程语言来完成相关的工作. 在团队技术文档站搭建这块,笔者尝试了许多框架,最终还是选择了 ...
- Docker最全教程——从理论到实战(二十三)
如何节约云端成本? 上云在大部分情况下就是为了降低成本,在这方面,主流的容器服务基本上都能够有效地降低成本——不仅能够高效自动化的管理和控制容器,而且不需支付Kubernetes 主节点的费用.不过, ...
- Docker最全教程——从理论到实战(八)
在本系列教程中,笔者希望将必要的知识点围绕理论.流程(工作流程).方法.实践来进行讲解,而不是单纯的为讲解知识点而进行讲解.也就是说,笔者希望能够让大家将理论.知识.思想和指导应用到工作的实际场景和实 ...
- Docker最全教程——从理论到实战(七)
在本系列教程中,笔者希望将必要的知识点围绕理论.流程(工作流程).方法.实践来进行讲解,而不是单纯的为讲解知识点而进行讲解.也就是说,笔者希望能够让大家将理论.知识.思想和指导应用到工作的实际场景和实 ...
- Docker最全教程——从理论到实战(六)
托管到腾讯云容器服务 托管到腾讯云容器服务,我们的公众号“magiccodes”已经发布了相关的录屏教程,大家可以结合本篇教程一起查阅. 自建还是托管? 在开始之前,我们先来讨论一个问题——是自建 ...
- Docker最全教程——从理论到实战(五)
往期内容链接 Docker最全教程——从理论到实战(一) Docker最全教程——从理论到实战(二) Docker最全教程——从理论到实战(三) Docker最全教程——从理论到实战(四) 本篇教程持 ...
- Docker最全教程——从理论到实战
Docker最全教程——从理论到实战(一) Docker最全教程——从理论到实战(二) Docker最全教程——从理论到实战(三) Docker最全教程——从理论到实战(四) Docker最全教程—— ...
随机推荐
- export和export default的区别
export和export default的区别一.export的使用1.直接输出export let words = ‘hello world!!!’export function output() ...
- 【STM32H7教程】第46章 STM32H7的ADC应用之DMA方式多通道采样
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第46章 STM32H7的ADC应用之DMA方式多 ...
- C#面向对象--结构
一.结构(Struct)是CTS中五种基本类型之一,是一种值类型,同样封装了同属一个逻辑单元的数据和行为,这些数据和行为通过结构中的成员表示:结构与类共享大多数相同的语法,但结构比类受到的限制更多,结 ...
- MySql学习-2. NavicatforMySQL 与 MySql的对接以及一些操作:
1.连接: 2.数据库的创建: 3.数据库中表的创建: 4.表的设计: 4.1 设计表: 4.2 增加数据(自动递增只是保证唯一值,即使数据删除了也是得前进):
- 微信小程序入门笔记-开通云开发(3)
1.介绍 开发者可以使用云开发开发微信小程序.小游戏,无需搭建服务器,即可使用云端能力. 云开发为开发者提供完整的原生云端支持和微信服务支持,弱化后端和运维概念,无需搭建服务器,使用平台提供的 API ...
- Docker 网络原理
引言 学习docker网络,可以带着下面两个问题来探讨 容器之间可以相互访问的原理 容器暴露端口后,通过宿主机访问到容器内应用,并且对于访问端而言不用感知容器存在的原理 Docker 本身的技术依赖L ...
- 安装PHP到CentOS(YUM)
运行环境 系统版本:CentOS Linux release 7.3.1611 软件版本:PHP-7.2 硬件要求:无 安装过程 1.配置YUM源 [root@localhost ~]# rpm -i ...
- 清北学堂—2020.1提高储备营—Day 3(图论初步(一))
qbxt Day 3 --2020.1.19 济南 主讲:李奥 目录一览 1.图论(图.图的存储方式.最小生成树的定义) 总知识点:图论 前言:众所周知,图论是一个非常重要的部分,而这次集训也可以算从 ...
- 电脑和手机上常用apk或Pc软件的重要目录或文件或文件夹路径
常用apk或Pc软件的重要目录或文件或文件夹路径 01.hosts文件位置在哪里 C:\Windows\System32\drivers\etc 02.Windows7的锁屏壁纸目录在哪 C:\Win ...
- Django---Django安装数据库
前面我们介绍了如何通过Django完成数据的接收和数据交互,那么我们都知道,数据一般都是通过数据库存储的,然而我们作为测试肯定和数据库也是经常打交道的,今天就简单的介绍下,如何在windows上安装数 ...