`
xyuma
  • 浏览: 6307 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

安装配置Docker在Ubuntu 20.04

    博客分类:
  • Tool
阅读更多


原文链接:https://blog.csdn.net/weixin_51617086/article/details/125235258

介绍

Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。Docker 项目后来还加入了 Linux 基金会,并成立推动 开放容器联盟(OCI)。 容器允许您在资源隔离的进程中运行应用程序。它们与虚拟机类似,但容器更便携,更有利于资源,并且更依赖于主机操作系统。

 

docker 命令图示


尚硅谷带你上高速 https://www.yuque.com/leifengyang/oncloud/ox16bw
 

在这里插入图片描述

 

第1步 Ubuntu20.04 上安装Docker

 

从官方Docker存储库安装Docker。将添加一个新的资源包,从Docker添加GPG密钥以确保下载有效,然后安装该包。

1. 更新现有的包列表:sudo apt update
2. 使用apt安装一些允许通过HTTPS才能使用的软件包:sudo apt install apt-transport-https ca-certificates curl software-properties-common

3. 将官方Docker存储库的GPG密钥添加到您的系统:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4. 将Docker存储库添加到APT源:sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

5. 使用新添加的repo源中的Docker包更新包数据库:sudo apt update

6. 确保您要从Docker repo安装而不是默认的Ubuntu repo:apt-cache policy docker-ce

    输出:


现在docker-ce还没有安装,用上面这个命令我们能看到安装源来自的Docker官方存储库。

7. 安装Docker:sudo apt install docker-ce

8. 检查它是否正在运行:sudo systemctl status docker

 Docker不仅可以为您提供Docker服务,还可以为您提供docker命令行工具或Docker客户端。

 

第2步 - 在不输入Sudo情况下执行Docker(可选)

默认情况下,该docker命令只能由root用户或docker组中的用户运行,该用户在Docker的安装过程中自动创建。如果您尝试运行该docker命令而不使用sudo或不在docker组中中用户运行,您将看到如下输出:

要想在在运行docker命令时不输入sudo,请将用户名添加到docker组中:

sudo usermod -aG docker ${USER}

要应用新的组成员身份,请注销服务器并重新登录,或输入以下内容:su - ${USER}

系统将提示您输入用户密码以继续。

通过输入以下内容确认您的用户现已添加到docker组:id -nG
如果您需要将用户添加到您未登录的docker组中,请使用以下方式明确声明该用户名:sudo usermod -aG docker username
本文的其余部分假定您以docker组中的用户身份运行该docker命令。如果您不是这样做,请在前面添加sudo命令。
补充:Ubuntu 添加 root 用户

ZT-https://blog.csdn.net/qq_43427482/article/details/107443040

==========================================

sudo vim /usr/share/lightdm/lightdm.conf.d/50-ubntu.conf
sudo vi /etc/pam.d/gdm-autologin
sudo vi /etc/pam.d/gdm-password
su - root
vi /root/.profile

第3步 - 使用Docker命令

命令使用包括传递一系列docker选项和命令,后跟参数。语法采用以下形式:

docker [option] [command] [arguments]

要查看所有可用的子命令,请输入:docker

 

第4步 - 使用Docker镜像

Docker容器是从Docker镜像构建的。默认情况下,Docker从Docker Hub中提取这些镜像,这是一个由Docker管理的Docker镜像市场,这是Docker项目背后的公司。任何人都可以在Docker Hub上托管他们的Docker镜像,所以您只需要将您的应用程序和Linux放在那边托管即可。

要检查您是否可以从Docker Hub访问和下载镜像,请输入:docker run hello-world

 

Docker最初无法在本地找到hello-world镜像,因此它从Docker Hub下载了镜像,Docker Hub是默认存储库。下载映像后,Docker从映像创建了一个容器,并在容器中执行了应用程序,显示了该消息。

 

您可以使用docker带子命令的search命令搜索Docker Hub上可用的镜像。例如,要搜索Ubuntu映像,请输入:docker search ubuntu

在OFFICIAL列中,带OK标记的表明这个镜像由公司构建和支持。其他镜像则由个人创建。确定要使用的映像后,可以使用命令pull将其下载到计算机。

 

 

下载映像后,可以使用子命令run运行容器。正如示例中那样,如果在使用子命令docker执行时未下载hello-world镜像,则Docker客户端将首先下载镜像,然后使用run运行容器。

要查看已下载到计算机的镜像,请输入:docker images

 

用于运行容器的镜像可以被修改并用于生成新镜像,然后可以将其上传到Docker Hub或其他Docker镜像托管网站。

 

第6步 - 管理Docker容器

使用Docker一段时间后,您的计算机上将有许多运行和非运行容器。要查看运行的,请使用:docker ps

 

 

要查看所有容器的运行状态,请使用docker ps命令加指令-a运行:docker ps -a
要查看您创建的最新容器,请使用-l命令:docker ps -l
要启动/停止容器,请使用docker start/stop,后跟容器IDxxxxxxxxxxxx。

 

一旦您决定不再需要容器,请使用docker rm命令将其删除。使用该docker ps -a命令查找与映像hello-world关联的容器的容器,然后将其删除。

 

您可以使用开关启动一个新容器并为其命名–name。您还可以使用该开关创建一个在停止时自行删除的容器–rm。有关这些选项和其他选项的更多信息,请参阅docker run help命令。

容器可以转换为可用于构建新容器的映像。让我们来看看它是如何工作的。

 

第7步 - 将容器中的更改提交到Docker镜像

 

 

当您启动Docker镜像时,您可以像使用虚拟机一样创建,修改和删除文件。您所做的更改仅适用于该容器。您可以启动和停止它,但是一旦使用docker rm命令销毁它,更改将永久丢失。本节介绍如何将容器的状态保存为新的Docker镜像。

在Ubuntu容器中安装Node.js后,您现在有一个运行镜像的容器,但容器与您用来创建它的镜像不同。但是您可能希望稍后重新使用此容器作为新映像。

然后使用以下命令将更改提交到新的Docker镜像实例。

docker commit -m "What you did to the image" -a "Author Name" container_id repository/new_image_name
-m是提交信息,可以帮助你和其他人知道你所做的修改,而-a用于指定作者。当您启动交互式Docker会话时,这是您在本教程前面提到的那个container_id。除非您在Docker Hub上创建了其他repository存储库,否则通常是您的Docker Hub用户名。

 

例如,对于用户sammy,使用容器ID:d9b100f2f636 ,命令将是:

docker commit -m "added Node.js" -a "sammy" d9b100f2f636 sammy/ubuntu-nodejs

 

当你提交镜像后,新的镜像在您的计算机上本地保存。在本教程的后面,您将学习如何将映像推送到Docker Hub之类的Docker镜像市场,以便其他人可以访问它。

再次列出Docker镜像将显示旧镜像以及从中衍生的新镜像:docker images

 

您还可以从Dockerfile构建映像,这样可以在新映像中自动安装软件。但是,这超出了本教程的范围。

现在让我们与他人分享新镜像,以便他们可以从中创建容器。

 

第8步 - 将Docker镜像推送到Docker存储库

 

从现有映像创建新映像之后的下一个步骤是与您几个朋友分享,Docker Hub上的镜像全世界都可以访问,不过你先要安装注册Docker Hub地址才行。

本节介绍如何将Docker镜像推送到Docker Hub,要推送镜像,请先登录Docker Hub。

 

docker login -u docker-registry-username

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics