ubuntu18.04安装docker

ubuntu18.04安装docker

文章目录

  • ubuntu18.04安装docker
  • 一.安装
    • 1.更新软件库索引
    • 2.安装一些必要的软件包
    • 3.添加Docker的官方GPG密钥
    • 4.添加Docker软件库
    • 5.再次更新软件库索引
    • 6.安装Docker CE
    • 7.启动Docker并设置开机启动
    • 8.验证Docker安装
    • 9.(若要让非root用户可以运行Docker命令)可以将用户添加到docker组:
  • 二.测试
    • 1.docker run hello-world
    • 2.docker run -it ubuntu bash
    • 3.sudo docker run -d -p 80:80 --name mynginx nginx
      • 如何查看效果
  • 三.如何查看上面测试的容器
    • 1.查看正在运行的容器:
    • 2.查看正在运行的容器:
    • 3.仅查看容器名称
    • 四.如何停止容器

  • 首先查看下Ubuntu的版本
    lsb_release -a
    我的版本信息如下

    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 18.04.6 LTS
    Release:        18.04
    Codename:       bionic
    

然后按照如下步骤安装即可

一.安装

1.更新软件库索引

首先,更新系统软件库索引。

sudo apt update

2.安装一些必要的软件包

Docker需要使用curl、apt-transport-https、ca-certificates、software-properties-common
安装这些软件包:

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软件库

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

5.再次更新软件库索引

sudo apt update

6.安装Docker CE

sudo apt install docker-ce

7.启动Docker并设置开机启动

sudo systemctl start docker
sudo systemctl enable docker

8.验证Docker安装

验证Docker是否成功安装并运行:

sudo docker --version

9.(若要让非root用户可以运行Docker命令)可以将用户添加到docker组:

sudo usermod -aG docker ${USER}

这一步需要重启系统才能生效,不然会显示没有权限

二.测试

1.docker run hello-world

我的服务器显示了如下内容

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
719385e32844: Pull complete 
Digest: sha256:4f53e2564790c8e7856ec08e384732aa38dc43c52f02952483e3f003afbf23db
Status: Downloaded newer image for hello-world:latestHello 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 theexecutable that produces the output you are currently reading.4. The Docker daemon streamed that output to the Docker client, which sent itto your terminal.To try something more ambitious, you can run an Ubuntu container with:$ docker run -it ubuntu bashShare 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/

2.docker run -it ubuntu bash

docker run -it ubuntu bash

这将会启动一个基于Ubuntu的容器,并给一个bash shell,可以在容器内部进行操作。输入exit可以退出。

3.sudo docker run -d -p 80:80 --name mynginx nginx

sudo docker run -d -p 80:80 --name mynginx nginx

如何查看效果

  • 可以通过Web浏览器访问

    • 由于已经将容器的80端口映射到主机的80端口,只需在浏览器的地址栏输入服务器的IP地址,即可访问到Nginx的默认欢迎页面。
    • 如果是在本地计算机上操作的,那么直接访问 http://localhost 就可以了。如果是远程服务器,使用该服务器的IP地址,例如 http://your_server_ip。(安全组要开放才能打开)
  • 使用curl命令

    • 从命令行,您可以使用curl命令来获取Nginx的默认页面内容:
    • curl http://localhost
      这应该会显示Nginx的默认欢迎页面的HTML内容,如下图
      在这里插入图片描述

三.如何查看上面测试的容器

1.查看正在运行的容器:

/$ sudo docker ps

2.查看正在运行的容器:

CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS                               NAMES
579ee93b319f   nginx     "/docker-entrypoint.…"   10 minutes ago   Up 10 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp   mynginx
/$ sudo docker ps -a
CONTAINER ID   IMAGE         COMMAND                  CREATED          STATUS                      PORTS                               NAMES
579ee93b319f   nginx         "/docker-entrypoint.…"   9 minutes ago    Up 9 minutes                0.0.0.0:80->80/tcp, :::80->80/tcp   mynginx
f260a7d0df2a   ubuntu        "bash"                   32 minutes ago   Exited (0) 31 minutes ago                                       eager_roentgen
5b1d541d529d   hello-world   "/hello"                 33 minutes ago   Exited (0) 33 minutes ago                                       frosty_shaw

3.仅查看容器名称

上面两条命令会列出容器的ID、创建时间、状态、端口映射等信息,下面这个可以只查看容器名称

sudo docker ps -a --format "{{.Names}}"

四.如何停止容器

  • 停止容器:
    使用docker stop命令停止容器。

    sudo docker stop mynginx
    

在这里插入图片描述

  • 删除容器:

    如果只是想暂时停止容器,那么第一步就足够了

    sudo docker rm mynginx
    

如果想运行一个Nginx容器,需要重新使用docker run命令。但由于您之前已经下载了Nginx镜像,所以这次启动容器时不再需要下载镜像。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/87886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pipenv:一个Python的包管理工具,用于创建一个python的虚拟环境

Pipenv是一个Python的包管理工具,它提供了一种简单的方式来管理Python项目的依赖关系。 以下是使用Pipenv的一些基本步骤: 安装Pipenv:可以通过运行以下命令来安装pipenv: pip install pipenv初始化项目:在项目的根…

【QT】QT事件Event大全

很高兴在雪易的CSDN遇见你 ,给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 本文分享QT中的事件Event技术,主要从QT事件流程和常用QT事件方法等方面展开,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞关注,小易…

C# string stringbuilder区别

在C#中,有三个主要的字符串类型,分别是string、StringBuffer和StringBuilder。这些类型之间有一些重要的区别: string: string 是C#中的字符串类型,是不可变的。这意味着一旦创建了一个字符串对象,就不能修…

如何搭建数据驱动自动化测试框架?

前言 说到数据驱动自动化测试,你会不会有这样的疑问:数据怎么管理?数据怎么才能驱动测试用例执行?到底怎么样才算数据驱动?那么本篇文章就教你如何进行数据驱动测试,相信你一定能对数据驱动自动化测试有一…

Android AMS——ActivityThread解析(四)

一、ActivityThread简介 ActivityThread 是Android 系统中的一个关键类,它是应用程序的入口点,并且负责启动和管理应用程序的主线程以及处理与UI相关的操作。下面是关于 ActivityThread 的一些简介: 应用程序的启动:当用户启动一个应用程序时,Android系统会创建一个新的进…

FlashDuty Changelog 2023-09-21 | 自定义字段和开发者中心

FlashDuty:一站式告警响应平台,前往此地址免费体验! 自定义字段 FlashDuty 已支持接入大部分常见的告警系统,我们将推送内容中的大部分信息放到了 Lables 进行展示。尽管如此,我们用户还是会有一些扩展或定制性的需求…

设计模式:享元模式(C++实现)

享元模式(Flyweight Pattern)是一种结构设计模式,它通过共享对象来有效地支持大量细粒度的对象。享元模式的目标是尽量减少内存使用,通过共享相同的数据来减少对象的数量。 以下是一个简单的C享元模式的示例: #includ…

网络安全--防火墙旁挂部署方式和高可靠性技术

目录 一、防火墙 二、防火墙旁挂部署方式 使用策略路由实现 第一步、IP地址配置 第二步、配置路由 第三步、在防火墙上做策略 第四步、在R2上使用策略路由引流 三、防火墙高可靠性技术--HRP 拓扑图 第一步、配置SW1、SW2、FW1、FW2 第二步、进入防火墙Web页面进行配…

基于Python的微博舆论分析,微博情感分析可视化系统(V2.0)

简介 Python基于微博的舆情分析,情感分析可视化系统 微博舆情分析系统,项目后端分爬虫模块、数据分析模块、数据存储模块、业务逻辑模块组成。 功能包括 登陆注册用户管理热门事件展示舆情分析,包括舆情分析,情感分类&#xff0…

程序运行过程中消耗的是堆内存还是栈内存还是其他?

程序在运行过程中会使用多种类型的内存,其中最常见的是堆内存和栈内存。下面是对它们的简要描述,以及它们在程序中的用途: 栈内存 (Stack Memory): 当函数调用发生时,栈用于存储局部变量、函数参数和返回地址。栈是后进…

2023最新PS(photoshop)Win+Mac免费下载安装包及教程内置AI绘画-网盘下载

2023最新PS(photoshop)WinMac免费下载安装包及教程内置AI绘画-网盘下载 2023最新PS(photoshop)免费下载安装教程来咯~ 「PhotoShop」全套,winmac: https://pan.quark.cn/s/9d8d8ef5c400#/list/share 所有版本都有 1,复制链接…

400G QSFP-DD FR4 与 400G QSFP-DD FR8光模块:哪个更适合您的网络需求?

QSFP-DD 光模块随着光通信市场规模的不断增长已成为400G市场中客户需求量最高的产品。其中400G QSFP-DD FR4和400G QSFP-DD FR8光模块都是针对波分中距离传输(2km)的解决方案,它们之间有什么不同?应该如何选择应用?飞速…

安卓生成公钥和md5签名

安卓公钥和md5证书签名 大家好,最近需要备案app,用到了公钥和md5,MD5签名我倒是知道,然而对于公钥却一下子不知道了, 现在我讲一下我的流程。 首先是md5证书签名的查看, 生成了apk和签名.jks后&…

Oracle 12c Docker镜像配置SSL

一、Docker运行Oracle 12c服务 a.拉取镜像 docker pull truevoly/oracle-12cb.运行 docker run -d -p 1521:1521 -p 2484:2484 -v /data/oracle/:/opt/oracle --name oracle_12c truevoly/oracle-12cc.查看日志 docker logs -f oracle_12cd.出现如下信息,则启动…

makefile中常见函数应用例子

makefile中常见函数应用例子 1)subst函数: subst函数用于字符串替换。以下是一个示例: $(subst ee,EE,feet on the street)2)patsubst函数: patsubst函数用于模式字符串替换。以下是一个示例: $(patsubst…

华为多路径软件UltraPath

检查多路径是否安装。 # rpm -qa|grep UltraPath 查看UltraPath软件版本 # upadmin show version 查看物理路径状态。 #upadmin show path 查看虚拟磁盘信息。 #upadmin show vlun 查看逻辑路径状态。 #upadmin show vlun 查看多路径配置。 #upadmin show upconfig 卸载Ul…

解释器模式简介

概念: 解释器模式(Interpreter Pattern)是一种行为型设计模式,它用于定义语言的文法,并解析和执行给定语言中的表达式。该模式将每个表达式表示为一个类,并提供了一种方式来组合这些表达式以实现复杂的语句…

竞赛选题 基于生成对抗网络的照片上色动态算法设计与实现 - 深度学习 opencv python

文章目录 1 前言1 课题背景2 GAN(生成对抗网络)2.1 简介2.2 基本原理 3 DeOldify 框架4 First Order Motion Model5 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于生成对抗网络的照片上色动态算法设计与实现 该项目较为新颖&am…

Spring常考知识点(IOC、事务、容器等)

作者:逍遥Sean 简介:一个主修Java的Web网站\游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有需要我的支持,请私信或评论留言! Spring需要理解的问…

LeetCode 169. 多数元素

文章目录 一、题目二、Java 题解 一、题目 给定一个大小为 n 的数组 nums,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 点击此处跳转题目。 示例 1&#xff…