linux中docker的安装教程

下面就为您详细讲解 "Linux中Docker的安装教程"。

1. 安装前的准备

在安装Docker之前,需要确保您的Linux系统版本符合下列要求:

  • CentOS:7 or later
  • Debian:Wheezy or later
  • Fedora:21 or later
  • Ubuntu:Trusty Tahr 14.04 or later
  • RHEL:7 or later

还需确保您已经安装了curl工具。如果您的系统里还没有curl,您可以通过以下的命令进行安装:

sudo apt-get install curl

2. Docker安装过程

  1. 卸载旧版本的Docker
    如果您已经在您的电脑上安装了旧版本Docker,为避免出错和影响安装,您需要先卸载掉旧版本的Docker,命令如下:
sudo apt-get remove docker docker-engine docker.io
  1. 安装Docker CE

Docker CE是Docker Community Edition的简称,这也是Docker涉及到的非企业级别操作的而版本。确保依赖关系可用:

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
  1. 安装GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. 添加Docker repository
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

如果出现:

add-apt-repository: command not found

请先使用下列代码安装软件:

sudo apt-get install software-properties-common | dnf install -y software-properties-common
  1. 安装Docker
sudo apt-get update
sudo apt-get install docker-ce
  1. 确认Docker已经成功安装

您可以通过以下的命令来运行一个简单的Docker镜像,确认Docker已经成功安装:

sudo docker run hello-world

3. 操作Docker(包含两个示例)

示例1:运行一个基础镜像

Docker有许多预设的镜像,可以直接在Docker Hub(镜像仓库)里下载。接下来,我们以CentOS的官方Docker镜像为例,来运行一个基础镜像。

  1. 从Docker Hub下载CentOS镜像
sudo docker pull centos

注意:在中国下载Docker Hub的镜像速度会非常慢,如果您遇到这个问题,可以考虑使用阿里云的Docker Hub镜像。

```bash
sudo docker pull registry.cn-hangzhou.aliyuncs.com/library/centos


2. 运行CentOS镜像

```bash
sudo docker run -i -t centos /bin/bash

命令参数说明:

  • -i:表示以交互式运行Docker,可在终端上进行输入输出操作
  • -t:表示在新容器内开启一个伪终端,同时将其绑定到以下命令行。
  • centos:表示要运行centos镜像
  • /bin/bash:表示在新容器内执行bash命令。

  • 查看正在运行的容器

sudo docker ps -a

您还可以通过以下命令列出所有镜像,以及运行状况:

sudo docker images -a

示例2:创建一个自定义镜像

除了使用Docker Hub里的预设镜像,我们还可以通过自己编写的Dockerfile文件,来定制一个适合自己的Docker镜像。接下来我们就从头开始创建一个自定义镜像。

  1. 创建一个Dockerfile文件

在一个新的文件夹里创建一个名为Dockerfile的文件,并把以下代码填入文件中:

FROM ubuntu
MAINTAINER AAA
RUN apt-get update && apt-get install -y apache2 && apt-get clean &&\
      echo "ServerName localhost" | tee /etc/apache2/conf-available/fqdn.conf &&\
      a2enconf fqdn &&\
      sed -i 's/Listen 80/Listen 8080/g' /etc/apache2/ports.conf &&\
      sed -i 's/\/var\/www\/html/\/var\/www\/web/g' /etc/apache2/sites-available/000-default.conf &&\
      echo "<html><body><h1>Hello!</h1></body></html>" > /var/www/web/index.html
EXPOSE 8080
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]

上述文件中,代码首先是第一条可能是最重要的编译指令。它确定我们打算制作的镜像从哪个基础镜像开始。在本例中,从Ubuntu官方第一方镜像开始。我们需要的应用是apache2,因此在RUN指令中将其安装,并通过诸如echo之类的解决方案设置默认值。

  1. 通过Dockerfile文件,生成自定义镜像

确保您已经在Dockerfile所在的文件夹内,然后输入以下代码语句:

sudo docker build -t my-apache2 .
  1. 运行自定义镜像

输入以下代码语句,完成镜像的运行。

sudo docker run -p 8080:8080 my-apache2

命令参数说明:

  • -p:表示在Docker容器和宿主机之间建立端口映射,格式为[宿主机端口]:[Docker内部端口]。本例中,我们将Docker内部的8080端口映射到宿主机的8080端口。
  • my-apache2:表示我们需要运行的自定义镜像名。

  • 查看正常运行的容器

可以运行以下命令,查看正在运行的容器:

sudo docker ps

总结

Linux中安装Docker CE的过程相对简单,只需要准备好Linux的环境和依赖关系即可。安装完成之后,我们可以通过运行一个基础镜像和创建一个自定义镜像的示例,进一步熟悉Docker的使用。如果您想要深入学习Docker,可以访问Docker官网的学习文档。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux中docker的安装教程 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Docker: Harbor一些小知识

    镜像文件上传到私有仓库harbor后,镜像的物理存储位置在哪里? 这些信息记录在docker-compose.yml里,通过观察发现 镜像存储在了宿主机的 volumes: – /data/registry:/storage:z 这个位置, 所以删除 harbor不会删除数据。因为数据被持久化到了宿主机的制定目录下了 [root@192 harbor]# c…

    Docker 2023年4月11日
    00
  • linux系统 docker封装打包python程序

    有时候我们需要将我们的程序成为“热插拔”,也就是别人打开开关就运行,关闭就不运行,docker容器相当于一个盒子,这个盒子有个开关,我们只要让我们的程序一直运行在docker容器里面,即可实现。docker创建容器,容器里面需要配置我们的程序所需要的环境,还需要放我们的程序的镜像,让镜像一直在容器中运行,然后通过docker启动或者停止容器来实现“热插拔”,…

    Docker 2023年4月13日
    00
  • 轻松安装docker并运行docker swarm模式

    轻松安装docker并运行docker swarm模式攻略 Docker是开源的、跨平台的容器化应用程序的开发、发布和使用解决方案,容器化解决方案将应用程序或服务与其所有依赖项打包成一个单一的可移植容器,并能在任何环境中运行。Docker Swarm是Docker官方的编排工具,使得用户可以轻松地管理Docker集群。 本文将指导您如何安装Docker以及运…

    Docker 2023年5月16日
    00
  • Docker 容器中搭建 nexus npm私库

    1,版本   dockers :1.13.1   ;nexus 3 2,安装   docker pull liumiaocn/nexus 3,启动 项目 详细 Nexus UI 8081 private repo 8082 proxy repo 8083 URL http://192.168.20.71:8081/     docker run -d -p …

    Docker 2023年4月11日
    00
  • Docker中运行.net core 验证码不显示

    问题根源:         验证码图片生成代码使用了System.Drawing,但是在Dockerfile的引用: microsoft/dotnet:2.2-aspnetcore-runtime 中微软官方并没有集成libgdiplus         所以解决方法有3个        1、在Dockerfile文件中添加RUN参数  安装libgdipl…

    Docker 2023年4月12日
    00
  • 万字长文带你入门docker

    1 Docker dockerfiler 镜像构建 Compose是在单机进行容器编排 Horbor 镜像仓库 Docker swarm 在多机进行容器编排 Docker Compose缺点是不能在分布式多机器上使用 Docker swarm缺点是不能同时编排多个服务, Docker Stack,可以在分布式多机器上同时编排多个服务。 1.1 Docker常…

    2023年4月8日
    00
  • docker使用

    1.本机安装的容器     sudo docker ps -a   查看最新的创建的容器        sudo docker ps -l 2.本机上的镜像     sudo docker images 3.在docker hub 上搜索镜像     sudo docker search tensorflow NAME                    …

    Docker 2023年4月11日
    00
  • Docker定制容器镜像的2种方法(推荐)

    关于“Docker定制容器镜像的2种方法”,我为你提供如下攻略: 一、概念解释 在Docker中,容器镜像是由一系列只读层组成的,它们都在初始化时被创建,而你在容器内进行的修改都是在一层新的可读写层中进行的。为了创建一个新的容器镜像,你可以利用Dockerfile文件中的指令构建一个新的可读写层,Docker还提供了另外两种构建镜像的方法,即通过“修改容器后…

    Docker 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部