docker centos:latest 使用 sshd
一、术语
1.容器
很多用户在接触Docker 之初都会认为容器就是一种轻量级的虚拟机,但实际上,容器和虚拟机有非常大的区别。从根本形态上来看,容器其实就是运行在操作系统上的一个进程,只不过加入了对资源的隔离和限制。
2.镜像
容器是一个动态的概念,而镜像是一个相对静止的概念。简单来说,镜像就是容器中的文件系统。镜像就是由Layered FS 组成的,并且它是只读的。当容器运行时,会在镜像之上再加上一层可读可写层。
3.容器和镜像的关系
容器和镜像是密切相关的,二者缺一不可,也是可以相互进行转换的。通过docker run 即可启动一个容器运行。当需要将容器转化为镜像时,可以通过docker commit 进行转化。
4.安装docker
https://www.docker.com/community-edition
二、拉取远程镜像 centos:latest
docker pull centos:latest
该命令会去远程镜像库拉取,拉取成功后使用命令查看
docker images
三、创建容器
docker run --name centosCon1 -i -t -p 5001:22 centos:latest /bin/bash
docker run 参数详解:
1. --name --表示容器名称
2. -i -- 以交互模式运行容器,通常与 -t 同时使用
3. -t -- 为容器重新分配一个伪输入终端,通常与 -i 同时使用
4. -p -- 指定容器暴露的端口
5. 5001:22 -- 表示将宿主机5001端口映射到容器中暴露的22端口
6. centos:latest -- docker images 列表中的 REPOSITORY:TAG
7. /bin/bash --表示使用bash
四、配置sshd
yum -y install openssh-server
若有遇到问题,请查看docker centos:last 开启sshd 遇到的证书问题
五、修改root密码 [如果未使用--privileged,这里的root只是普通用户]
passwd root
六、提交当前容器为新的镜像或覆盖原镜像
1.退出当前容器
exit
2. 查到被我们修改的容器ID
docker ps -a
3.提交当前容器为新的镜像或覆盖原镜像
docker commit {容器ID} {镜像名称}
说明:
1.{镜像名称}既可以为新的名称也可以直接覆盖原始镜像
2.docker run 会根据镜像创建一个容器,如果没有手动执行 docker rm {容器ID},该容器将会一直存在,你可以启动、停止、登录容器;命令如下:
2.1 启动:docker start {容器名称}
2.2 停止:docker stop {容器名称}
2.3 强制停止:docker kill {容器ID}
2.4 登录容器:docker attach {容器名称} --容器必须启动; 一个容器支持多个attach,这将会出现屏幕共享效果
3.使用docker commit后,我们刚才配置的带有sshd的容器将生成新镜像或覆盖原始镜像,我们又可以基于它来创建新的容器
七、使用Xshell+WinSCP连接容器
host:127.0.0.1
port:5001
User:root
pwd:******
docker centos:latest 使用 sshd的更多相关文章
- docker centos:last 开启sshd 遇到的证书问题
启动sshd: # /usr/sbin/sshd 一.问题描述 这时报以下错误: [root@ xxx/]# /usr/sbin/sshd Could not load host key: /etc/ ...
- Docker Centos安装Openssh
环境介绍: Docker版本:1.5.0 镜像:docker.io:centos latest 操作步骤: 1.启动镜像 docker run -ti centos /bin/bash 2.安装pas ...
- Docker Centos安装Redis以及问题处理
之前一篇文章 Redis安装及主从配置 介绍了redis的安装配置,另一篇文件介绍了 Docker Centos安装Openssh .今天将两篇文件结合一下——在Docker Centos环境下搭建r ...
- Docker Centos安装Mysql5.6
之前一篇随笔<Docker Centos安装Openssh> 写的是如何在基础的centos镜像中搭建ssh服务,在此基础上再搭建其他服务.本文继续介绍在centos_ssh基础上搭建my ...
- Docker -CentOS 6.5上安装
开始安装daoker之旅: 1. [root@localhost ~]# uname -r -.el6.x86_64 2. [root@localhost ~]# cat /etc/issue Cen ...
- Docker CentOS / Ubuntu容器开启 SSH 服务
Docker CentOS / Ubuntu容器开启 SSH 服务 在CentOS容器内执行 yum install passwd openssl openssh-server -y # Ubuntu ...
- AspNetCoreapi 使用 Docker + Centos 7部署
好久没有更新文章了,前段时间写了一系列的文章放到桌面了,想着修修改改,后来系统中勒索病毒了还被公司网络安全的抓到是我电脑,后来装系统文章给装丢了.然后好长一段时间没有写了. 今天记录一下AspNetC ...
- 基于docker的centos:latest镜像制作nginx的镜像
Dockerfile和nginx.repo在同一目录下 先创建nginx.repo [root@localhost nginx]# cat nginx.repo [nginx] name=nginx ...
- Docker - CentOS 安装 Docker 和 Docker-Compose
目录 介绍 Docker Docker-Conpose 安装 Docker CE 系统要求 使用 YUM 安装 配置加速器 安装 Docker-Compose 介绍 Docker Docker 是一个 ...
随机推荐
- NetApp存储方案及巡检命令
一.MCC概述 Clustered Metro Cluster(简称MCC)是Netapp Data Ontap提供的存储双活解决方案,当初的方案是把1个FAS/ V系列双控在数据中心之间拉远形成异地 ...
- Docker 及 nvidia-docker 使用
Docker 基本用法 1. 安装社区版docker-ce 及 nvidia-docker2 插件 通过官网介绍的软件源的方式安装. 如果要安装nvidia-docker,由于其需要与docker-c ...
- 【Asp.net入门15】第一个Asp.net应用程序-输入验证
前言 所谓输入验证,顾名思义就是验证用户输入符不符合要求.前面我们已经完成了这个简单的应用程序,但还有一个问题需要解决:用户可以在Default.aspx窗体中 提交任何数据,甚至可以提交根本不包含任 ...
- Ansible lineinfile模块详解
目录 简介 修改匹配行 在匹配行前或后添加内容 在匹配行前添加 在匹配行后添加 修改文件内容及权限 删除一行内容 文件存在则添加一行内容 如果有匹配的行则修改该行,如果不匹配则添加 参数backref ...
- np.diff函数
np.diff函数 觉得有用的话,欢迎一起讨论相互学习~Follow Me 数组中a[n]-a[n-1] import numpy as np a=np.array([1, 6, 7, 8, 12]) ...
- 深入理解FIFO
深入理解FIFO(包含有FIFO深度的解释) FIFO: 一.先入先出队列(First Input First Output,FIFO)这是一种传统的按序执行方法,先进入的指令先完成并引退,跟着才执行 ...
- echarts地图扩展___自定义的svg图
echarts的自定义地图 标签引入js文件 <script type="text/javascript" src="echarts/require.js" ...
- jar包读取包内properties文件
properties位于src目录下 project --src -----package -----test.properties Properties p = new Properties(); ...
- [Luogu 3258] JLOI2014 松鼠的新家
[Luogu 3258] JLOI2014 松鼠的新家 LCA + 树上差分. 我呢,因为是树剖求的 LCA,预处理了 DFN(DFS 序),于是简化成了序列差分. qwq不讲了不讲了,贴代码. #i ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第二部分(Page 7)
编写你的第一个 Django app,第二部分(Page 7)转载请注明链接地址 本教程上接前面的教程.我们会配置数据,创建你的第一个 model,并对Django 自动生成的 admin 站点进行快 ...