首页 > 其他分享 >docker安装及docker的常用操作。

docker安装及docker的常用操作。

时间:2024-09-26 19:48:27浏览次数:3  
标签:容器 常用 run yum 镜像 docker 安装 id

目录

1、什么是docker

2、什么是沙盒

3、docker容器和虚拟机的区别

4、Docker架构

1、docker分三大部分

1、docker客户端

2、docker主机

3、远程仓库

2、两个关键词

1、镜像

2、容器

3、核心概念

4、docker的特性及优点

5、部署docker环境

1、查看一下Linux内核版本

2、卸载老版本docker,避免产生影响

3、升级 yum 和 配置 源

4、在虚拟机中安装docker(不操作)

5、查看历史版本的docker

6、安装指定版本的docker

7、安装成功

8、启动服务验证一下

6、docker的常用操作

1、查看本地镜像

2、查找指定镜像

1、到官网去查

2、用命令查

3、拉取镜像

4、查看容器

5、移除容器

6、启动/创建 容器

7、启动Tomcat容器

8、进入容器内

9、Tomcat启动后404问题

10、退出容器+查看容器日志


1、什么是docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows(对于windows不是太友好)操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

2、什么是沙盒

沙盒机制,又称为沙箱(sandbox),是一种计算机安全领域中的技术,用于为运行中的程序提供隔离的环境。这种机制主要通过以下方式来实现:

  • 进程隔离。通过创建独立的进程来运行应用程序,每个进程拥有自己独立的内存空间和资源,从而确保应用程序的异常不会影响其他进程和系统的稳定性。

  • 权限控制。通过权限控制来限制应用程序对系统资源的访问,例如通过访问控制列表(ACL)或用户权限来限制应用程序对文件系统的访问,以防止数据泄漏或破坏。

  • 资源隔离。对应用程序的资源使用进行限制,如CPU利用率和内存使用量,以防止某个应用程序占用过多的系统资源,导致其他应用程序运行缓慢。

  • 数据隔离。将应用程序的数据存储在独立的文件系统中,与其他应用程序的数据隔离开来,防止敏感数据被其他应用程序访问和修改。

  • 沙盒机制广泛应用于操作系统、浏览器、移动应用等场景,旨在提高安全性和稳定性。例如,在移动设备中,每个应用程序都有自己的沙盒,只能访问自己的存储空间,这有助于保护应用程序免受其他应用程序的干扰。在计算机安全中,沙盒常用于测试可能带有恶意代码的程序,因为在沙盒环境中,即使程序包含恶意行为,也不会对系统造成实际损害。

3、docker容器和虚拟机的区别

相同点:docker容器和虚拟机都采用了虚拟的技术。

不同点:docker相当于虚拟机而言,少了虚拟机操作系统层,少了一层就少了很多的资源浪费,所以docker的效率更高。

4、Docker架构

1、docker分三大部分

1、docker客户端

用户执行命令,客户端接收到命令会将命令发给docker主机,由主机去执行,同时会将docker的一些信息展示给用户。

2、docker主机

执行docker命令的,接收到docker客户端的命令,执行这个命令,这个过程是隐藏的,不会暴露给用户。

3、远程仓库

提供了丰富的镜像,有丰富的资源供开发者下载。

2、两个关键词

1、镜像

远程仓库中提供的都是镜像,镜像是启动容器必须的。【相当于面向对象中的类概念】。

2、容器

docker中真正运行的软件被称为容器,【相当于面向对象中的对象概念】。

3、核心概念

4、docker的特性及优点

特点:

隔离,文件隔离、系统隔离、资源隔离、网络隔离、日志隔离等。每个容器都完全独立运行在一个沙盒中,所有数据、资源都是隔离的,比如,CPU、内存等等,网络上会为每个容器虚拟一个ip地址,docker为每个容器都提供自己的日志,互不影响。

优点:

它的虚拟化做的比虚拟机要好,更节省资源。可以跨平台,不需要担心操作系统的影响,另外docker的应用也很广泛,各大公司都有应用。

缺点:

docker对程序是友好的,但是不善于处理文件和数据,一般情况会将文件或数据以路径映射的方式挂载到容器外。

5、部署docker环境

官网手册: https://docs.docker.com/engine/install/centos/

1、查看一下Linux内核版本

uname -r

要求3.10版本及以上。

2、卸载老版本docker,避免产生影响

如果服务器安装过docker,没有卸载再次安装会导致安装失败,首先要卸载老版本(咱们没安装过docker,可以不需要这个操作,不过可以试一下。)

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

3、升级 yum 和 配置 源

yum工具可以安装软件,安装docker时需要更多工具,操作系统自带不够,所以要升级。

源是 安装软件时找的软件安装包,需要将docker的源(安装包)添加到yum中。

yum install -y yum-utils ##执行第一个命令,给yum升个级。


##执行的第二个命令
 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、在虚拟机中安装docker(不操作)

yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

命令是官方提供的安装docker的,命令会安装最新版本docker,我们不执行这个命令,我们执行安装指定版本的docker。

5、查看历史版本的docker

yum list docker-ce --showduplicates | sort -r

6、安装指定版本的docker

我们统一安装:20.10.8版本

安装指定版本的命令:

yum install --setopt=obsoletes=0 docker-ce-20.10.8-3.el7 docker-ce-selinux-20.10.8-3.el7.noarch

7、安装成功

8、启动服务验证一下

# 执行命令1:启动docker服务
systemctl start docker

# docker开机自启
systemctl enable docker

# 运行hello-world程序(官方自带程序)
docker run hello-world

6、docker的常用操作

1、查看本地镜像

docker images

REPOSITORY:镜像的名字

TAG:镜像标签,可以通过标签指定版本号

IMAGE_ID:镜像的唯一标识

CREATED:创建镜像的时间

SIZE:镜像大小

2、查找指定镜像

1、到官网去查

网站: http:// https://hub.docker.com/

2、用命令查
docker search 镜像名称

3、拉取镜像

docker pull tomcat:8.0

拉取tomcat的8.0版本镜像

4、查看容器

# 【查看当前正在运行的容器】
docker ps
​
# 【查看所有容器,包括运行中的和未启动的】
docker ps -a

5、移除容器

【先多启动几次tomcat镜像:】

# rm是移除容器
docker rm 容器id或名字

按照id移除时可以不把id写全,docker会根据输入模糊匹配,如果只匹配到一个,那么移除,匹配多个不做任何操作。

# rmi是移除镜像
docker rmi 镜像id或名字:[标签]

移除镜像时,id的规则也符合容器操作的规则,模糊匹配。

如果镜像对应的容器存在(正在运行),不能移除镜像,需要先把所有容器都移除才能移除镜像。

6、启动/创建 容器

# docker run 自定义个名字 镜像名字或id:标签
# docker run tomcat8 tomcat:8.0
# tomcat启动还要添加其它指令,以保证可以正常访问到tomcat,并且不占用控制点,在后台运行

docker run -p 8080:8080 -d --name tomcat8 tomcat:8.0

docker run -p 8090:8080 -d --name tomcat8-90 tomcat:8.0

run:第一次启动容器是要用run命令

-p:端口映射,将虚拟机的端口号映射到容器上(虚拟机端口号:容器端口号)

-d:后台运行

--name:给容器取个名字

7、启动Tomcat容器

# 启动 docker start 容器名称或id
docker start tomcat8
​
# 停止 docker stop 容器名称或id
docker stop tomcat8
​
# 重启 docker restart 容器名称或id
docker restart tomcat8

start和run的区别

  • run是在第一次启动时执行,准确来说是创建一个容器

  • start是启动已经存在的容器

  • start不需要想run一样写多个参数及配置,会自动按照run时的配置和命令启动

  • 8、进入容器内

    # 进入容器内部 docker exec -it 容器名称或id /bin/bash
    docker exec -it tomcat8 /bin/bash

    exec:进入容器的命令

    -it:是由-i和-t组成的,-i是交互方式,-t是提供一个终端

    /bin/bash:指定命令的路径和方式(就是该路径下有linux命令的可识别文件。)

9、Tomcat启动后404问题

创建的Tomcat容器的webapps目录下可能没有ROOT工程,这样会导致访问时出现404问题,可以进入容器后,从webapps.dist目录下的ROOT工程复制到webapps中。(目前版本已经不存在404问题了)

10、退出容器+查看容器日志

退出容器可以用ctrl+d,也可以执行exit命令

docker日志查看

# docker logs 容器名字或id -f -n 数字
docker logs tomcat8 -f -n 10

-f:日志持续输出,会时时输出产生的日志

-n:输出倒数X条日志

标签:容器,常用,run,yum,镜像,docker,安装,id
From: https://blog.csdn.net/weixin_62896751/article/details/142497846

相关文章

  • Docker 教程:在 Mac M2 上运行 PostgreSQL
    前提条件  -已安装[DockerDesktop] 创建Docker卷  首先,创建一个名为`pgdata`的Docker卷,以便用于PostgreSQL数据存储。  dockervolumecreatepgdata运行PostgreSQL容器  使用以下命令启动PostgreSQL容器:  dockerrun--namepostgres -ePOS......
  • Debian 11 安装与配置 SMB
    1.安装samba等相关服务sudoaptinstallsambasmbclientcifs-utils2.配置组及用户1)建立smb访问目录sudomkdir/mnt/scan2)建组sudogroupaddsmbscan3)建立用户sudouseradd-M-s/sbin/nologinscanner4)设置群组sudousermod-aGsmbscanscanner5)设置SMB用户密......
  • 用户体验分享 | YashanDB V23.2.3安装部署
    近期崖山新版体验过程中,总能看到用户提问:openssl版本问题、monit命令找不到问题、yashan用户权限问题、数据库重装问题今日整理了多位用户的安装经验,希望能够帮助到大家~1.Lucifer三思而后行:YashanDB个人版数据库安装部署2.小周的数据库进阶之路:国产库学习系列之yasha......
  • Windows如何本地部署llamafile并运行千问7b大模型无需安装运行环境或依赖库
    文章目录前言1.下载llamafile2.下载大语言模型3.运行大语言模型4.安装Cpolar工具5.配置远程访问地址6.远程访问对话界面7.固定远程访问地址前言本文主要介绍在Windows系统电脑如何利用llamafile结合cpolar内网穿透工具,实现随时随地远程访问本地大语言模型的......
  • 华为GaussDB数据库(单机版)在ARM环境下的安装指南
    一、软件版本机器配置:8核16G,CPU:HuaweiKunpeng9202.9GHz操作系统:EulerOS2.864bitwithARM数据库版本:GaussDBKernel505.1.0build44f4fa53二、部署流程2.1新建用户①以omm用户为例,添加一个omm用户useraddomm②此时在/home下会有一个omm目录,进入到此目录......
  • 宝塔面板WordPress建站教程:海外服务器选择与详细安装步骤
     一、什么是宝塔面板?宝塔面板(BTPanel)是一款简单易用的服务器管理工具,适合那些不熟悉命令行操作的用户。它允许你通过一个图形化界面轻松管理服务器和网站,尤其适合新手用户快速搭建像WordPress这样的网站。二、准备工作选择服务器与域名搭建网站的第一步是选择合适的服务器......
  • 龙芯3A6000+loongnix20.6操作系统安装idea社区版2024和docker
    龙芯3A6000+loongnix20.6操作系统安装idea社区版和docker1.搭建目标:安装jdk8安装idea社区版-2024(需要jdk17)安装docker(可选)配置docker自动补全(可选)如何使用docker拉取镜像(可选)2.配置说明主机:中科云3A6000NUC操作系统:loonignix-20.63.安装jdk3.1安装jdk8打开桌......
  • ubuntu安装gcc
    在Ubuntu系统中,如果没有安装`gcc`,您可以使用包管理器`apt`来安装它。以下是详细的步骤:###安装`gcc`1.**打开终端**:打开终端(Terminal)。2.**更新软件包列表**:首先,更新软件包列表,确保安装最新的软件包版本。```bashsudoaptupdate```3.**安装`gcc`......
  • Windows Server 2019 Web服务器之IIS的安装与基本配置
    准备工作:选择一台服务器作为WEB-IIS服务器在WindowsServer2019系统中,IIS角色是可选组件,默认情况下是没有安装的。1.在windows服务器中安装IIS1)打开【服务器管理器】,单击【添加角色和功能】。2)默认选择【基于角色或基于功能的安装】,点击【下一步】。3)默认选项,继续下一步。......
  • Linux服务器运维管理面板1Panel快速安装及安全配置
    1Panel是一个现代化、开源的Linux服务器运维管理面板,旨在帮助运维人员简化服务器管理任务。它提供了直观的界面和强大的功能,使用户可以通过图形化操作界面对服务器进行管理,减少了对命令行的依赖。1Panel支持多种操作系统,适用于Linux服务器,提供了如网站管理、数据库管理、安......