docker:在ubuntu中运行docker容器

前言

1 本笔记本电脑运行的ubuntu20.04系统

2 docker运行在ubuntu20.04系统

3 docker镜像使用的是ubuntu18.04,这样拉的

docker pull ubuntu:18.04

4 docker容器中运行的是ubuntu18.04的系统,嗯就是严谨

5 这纯粹是学习笔记,实际上没啥价值。

6 和docker相关的命令同样适用于windows版本的docker,且不保证不会出现死机,硬盘被莫名其妙格式化的情况。

运行容器

查看容器:docker ps -a

容器运行了:

docker exec -it ubuntu-18-001 /bin/bash

进入容器了

使用另一个终端查看容器的运行状态:

 docker ps

 说明容器已经运行2分钟了

在这个输出中:

  • CONTAINER ID 是容器的唯一标识符。
  • IMAGE 是容器使用的镜像名称。
  • COMMAND 是容器启动时执行的命令。
  • CREATED 显示容器的创建时间。
  • STATUS 显示容器的状态,例如 Up 表示正在运行,Exited 表示已经停止。
  • PORTS 显示容器的端口映射信息。
  • NAMES 是容器的名称,如果您没有指定名称,Docker 会自动生成一个。

查看所有容器(包括已停止的):docker ps -a

配置容器网络

apt-get install update

apt-get install tree
apt-get install vim
apt-get install net-tools

apt-get install git

apt-get install curl

ping宿主机:

设置登录密码

passwd root

设置完成后,执行exit退出docker容器。

登录测试:

先查找容器的ID:docker ps -a

 使用docker login 1dfd192c72fb

如下所示:确实会提示需要输入用户名和密码,但是会报错

直接输入docker exec -it ubuntu-18-001 /bin/bash还可以进入。 

重启docker容器

 docker restart ubuntu-18-001

执行后,查看docker的运行时间,发现确实重启了

和宿主机NFS共享文件夹

挂在主机的nfs文件夹:

sudo mount -t nfs -o nfsvers=3,nolock 192.168.31.20:/home/lkmao/nfsroot nfsserver/

在另一个机器上挂载是正常的。应该是docker的容器的权限问题。

因为启动容器时,没有开启特权模式,解决办法是,1停止容器,2特权模式运行容器

1 停止容器:

2特权模式运行容器

关于docker run,docker start ,docker exec。

docker run:创建新的容器,并运行容器,并执行传递的命令,支持特权

docker start:启动已经存在的容器,并执行传递的命令,不支持特权

支持特权:并执行传递的命令,不支持特权

所以要删除容器新建一个呗。

docker rm <容器名>,如下所示:因为是测试的,所以就都删除了。

创建新的容器:

如下ubuntu:18.04是镜像名称,ubuntu18-lkmao-001是新建的容器的名字

-it是-i和-t的合体,-i表示交互,-t表示使用终端,就是使用终端交互。就是shell登录界面。

--privileged表示特权模式。

docker run --privileged --network=host --name ub18-lkmao-003 -it -p 8022:22 f9a80a55f492

会有一个经过表示,你都使用主机网络了,还有必要做端口转发发,所以端口转发设置无效。

因为是新建的容器,所以安装一些必要的软件。现在在容器里执行ifconfig,通过输出信息可知,当前容器已经使用了和宿主机相同的IP地址了。

再次挂在:挂载成功

先安装nfs客户端:

apt-get install nfs-common
mkdir /nfsserver/ -p

然后挂载:

mount -t nfs 192.168.31.20:/home/lkmao/nfsroot /nfsserver/

后者:

sudo mount -t nfs -o nfsvers=3,nolock 192.168.31.20:/home/lkmao/nfsroot nfsserver/

验证:挂载成功

检查容器的状态

通过docker ps -a获取对应的容器的ID;

使用docker inspect <CONTAINER ID>查看,执行后会输出一大段信息。

可以看到很多的信息,包括绑定的22端口:

经过实际测试不实行的,因为前面已经发出报警了,因为绑定了主机的网络,所以端口设置失效了。

小结 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JAVA 源码分析Integer的128陷阱

128陷阱介绍及演示 首先什么是128陷阱&#xff1f; Integer包装类两个值大小在-128到127之间时可以判断两个数相等&#xff0c;因为两个会公用同一个对象&#xff0c;返回true&#xff0c; 但是超过这个范围两个数就会不等&#xff0c;因为会变成两个对象&#xff0c;返回fal…

Linux第85步_EXTI外部中断

1、在stm32mp157d-atk.dts文件中添加“led0”和“key0”节点 打开虚拟机上“VSCode”&#xff0c;点击“文件”&#xff0c;点击“打开文件夹”&#xff0c;点击“zgq”&#xff0c;点击“linux”&#xff0c;点击“atk-mp1”&#xff0c;点击“linux”&#xff0c;点击“my_l…

RecyclerView 调用 notifyItemInserted 自动滚动到底部的问题

项目中发现一个奇怪的现象 RecyclerView 加载完数据以后&#xff0c;调用 notifyItemInserted 方法&#xff0c;RecyclerView 会滑动到底部。 简化后的效果图&#xff1a; 因为这个 RecyclerView 的适配器有一个 FootViewHolder&#xff0c;所以怀疑是 FootViewHolder 的问题…

金属氧化物压敏电阻的冲击破坏机理高能压敏电阻分析

以氧化锌为主的金属氧化物阀片在一定的电压和电流作用下的破坏可分为热破坏和冲击破坏两类。 热破坏是指氧化锌电阻在交流电压持续作用时发生的破坏,即由于阀片在交流作用下的发热超过了其散热能力而导致的热平衡失控的现象。交流引起的热破坏可以分为几种不同情况:一种是由于…

unity学习(76)--窗口化和后台运行

1.通过如下方式将编译的游戏设置为窗口模式。 成功&#xff1a; 2.现在只有鼠标点击的窗体游戏运动&#xff0c;其他窗体游戏都会卡住。 2.1build setting中 2.2unity内部Project Settings 也被同步修改了

生成式 AI 学习资源大汇总

这里汇聚了该领域的海量学习资源&#xff0c;从研究更新到面试技巧&#xff0c;从课程材料到免费课程&#xff0c;还有实用代码&#xff0c;一应俱全&#xff0c;是你工作流程中的得力助手&#xff01; 前沿研究&#xff1a;每月精心筛选的最佳生成式 AI 论文列表&#xff0c;让…

SpringMVC学习记录

SpringMVC简介与配置 SpringMVC是一种基于Java实现MCV模型的轻量级Web框架&#xff0c;我们该如何使用呢&#xff1f; 首先在Maven中添加坐标 <dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><ver…

iOS UIFont-实现三方字体的下载和使用

UIFont 系列传送门 第一弹加载本地字体:iOS UIFont-新增第三方字体 第二弹加载线上字体:iOS UIFont-实现三方字体的下载和使用 前言 在上一章我们完成啦如何加载使用本地的字体。如果我们有很多的字体可供用户选择,我们当然可以全部使用本地字体加载方式,可是这样就增加了…

算法---动态规划练习-7(按摩师)【类似打家劫舍】

按摩师 1. 题目解析2. 讲解算法原理3. 编写代码 1. 题目解析 题目地址&#xff1a;点这里 2. 讲解算法原理 首先&#xff0c;给定一个整数数组 nums&#xff0c;其中 nums[i] 表示第 i 天的预约时间长度。 定义两个辅助数组 f 和 g&#xff0c;长度都为 n&#xff08;n 是数组…

STM32时钟简介

1、复位&#xff1a;使时钟恢复原始状态 就是将寄存器状态恢复到复位值 STM32E10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。 复位分类&#xff1a; 1.1系统复位 除了时钟控制器的RCC_CSR寄存器中的复位标志位和备份区域中的寄存器以外,系统 复位将复位…

SQL-CRUD-2数据库实验

目录 第一关任务描述 相关知识 插入完整内容的行 插入选定内容的行 编程要求 测试说明 第一关代码 第二关任务描述 相关知识 删除表中的指定行 删除表中的所有行 编程要求 测试说明 第二关代码 第三关任务描述 相关知识 更新表中的指定行 编程要求 测试说明…

【学习】信创产品软件测试企业建设参考清单

“信创&#xff0c;即信息技术应用创新产业&#xff0c;涉及IT基础设施、基础软件、应用软件、信息安全等方面&#xff0c;产品覆盖面广、专业性强。作为目前的一项国家战略&#xff0c;也是当今形势下国家经济发展的新动能&#xff0c;信创产业发展已经成为促进经济数字化转型…

SlerfTools:简化操作,激发Solana生态创新潜能

在区块链世界的快速演变中,Solana生态系统以其独特的高性能吸引了全球的目光。然而,随着生态系统的蓬勃发展,用户和开发者面临的挑战也日渐增多。正是在这样的背景下,一个名为SlerfTools的新星项目应运而生,它承诺将为Solana带来一场革命性的变革。 项目的诞生 SlerfTools并非…

【QT+QGIS跨平台编译】043:【libprotobuf-lite+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

点击查看专栏目录 文章目录 一、libprotobuf-lite介绍二、文件下载三、文件分析四、pro文件五、编译实践一、libprotobuf-lite介绍 libprotobuf-lite 是 Protocol Buffers 的 C++ 轻量级运行时库,专门设计用于在资源受限的环境下使用。与标准的 libprotobuf(Protocol Buffers…

深入浅出的揭秘游标尺模式与迭代器模式的神秘面纱 ✨

​&#x1f308; 个人主页&#xff1a;danci_ &#x1f525; 系列专栏&#xff1a;《设计模式》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 &#x1f680; 转载自&#xff1a;设计模式深度解析&#xff1a;深入浅出的揭秘游标尺模式与迭代…

力扣 718. 最长重复子数组

题目来源&#xff1a;https://leetcode.cn/problems/maximum-length-of-repeated-subarray/description/ C题解&#xff08;思路来源代码随想录&#xff09;&#xff1a;动态规划 确定dp数组&#xff08;dp table&#xff09;以及下标的含义。dp[i][j] &#xff1a;以下标i - …

速通数据结构第三站 单链表

系列文章目录 速通数据结构与算法系列 1 速通数据结构与算法第一站 复杂度 http://t.csdnimg.cn/sxEGF 2 速通数据结构与算法第二站 顺序表 http://t.csdnimg.cn/WVyDb 感谢佬们支持&#xff01; 目录 系列文章目录 前言一、单链表 1 结构体 …

踏上机器学习之路:探索数据科学的奥秘与魅力

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…

hxp CTF 2021 - A New Novel LFI(新颖的解法)

一、环境 unbentu&#xff0c;docker https://2021.ctf.link/assets/files/includers%20revenge-25377e1ebb23d014.tar.xz 二、解析 PHP Filter 当中有一种 convert.iconv 的 Filter &#xff0c;可以用来将数据从字符集 A 转换为字符集 B &#xff0c;其中这两个字符集可以…

记录pycharm配置Anaconda环境时没有反应的问题

记录pycharm配置Anaconda环境时没有反应的问题 背景 下载最新pycharm后在设置中配置add interpreter Anaconda环境时&#xff0c;x选中conda.ba文件点击Load Enviroments后&#xff0c;没有反应&#xff0c;就闪了一下&#xff0c;也有添加成功 探索路程 试过了重启&#x…
最新文章