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 是一个 ...
随机推荐
- 【XSY1841】Intervals
Description 在一个长度为m的序列中选出n个区间,这些区间互不包含,且至少有一个区间的左端点为x. 问有多少种方案,注意交换两个区间的顺序视为不同方案. 答案很大,输出模10000000 ...
- CF993E Nikita and Order Statistics 【fft】
题目链接 CF993E 题解 我们记小于\(x\)的位置为\(1\),否则为\(0\) 区间由端点决定,转为两点前缀和相减 我们统计出每一种前缀和个数,记为\(A[i]\)表示值为\(i\)的位置出现 ...
- mysqldump导出多个数据库
mysqldump -uroot -p111111 -q -e -R -x --databases account game_s1 game_s2 ...... > D:\backup.sql ...
- linux命令总结kill命令详解
1.作用 kill命令用来中止一个进程. 2.格式 kill [ -s signal | -p ] [ -a ] pid ... kill -l [ signal ] 3.参数 -s:指定发送的信号. ...
- docker中实现服务日志轮转
问题背景 通常我们一个完整的应用镜像有两部分组成,一个是运行时环境,一个是应用程序.我们以php应用为例,一个完整的php应用需要包含openresty + php两个服务来配置运行时环境,然后再加上 ...
- NO.2day 操作系统基础
操作系统基础 1.为什么要有操作系统 操作系统为用户程序提供一个更好.更简单.更清晰的计算机模型,并管理刚才提到的所有设备(磁盘.内存.显示器.打印机等).程序员无法把所有的硬件操作细节都了解到,管理 ...
- 完美解决github访问速度慢
1. 解决方法 2.解决方法 1. 修改本地hosts文件 windows系统的hosts文件的位置如下:C:\Windows\System32\drivers\etc\hosts mac/linux ...
- vue 配置环境遇到的问题总结
之前Vue的官网上对于vue-cli脚手架搭建环境是这样的几步: npm install --global vue-cli vue init webpack my-project cd my-proj ...
- bzoj千题计划148:bzoj1537: [POI2005]Aut- The Bus
http://www.lydsy.com/JudgeOnline/problem.php?id=1537 朴素的转移:dp[i][j]=max(dp[i][j-1],dp[i-1][j])+p[i][ ...
- [整理]C结构实现位段(bit field)
#include <stdio.h> #include <string.h> typedef struct A{ int a:5; int b:3; unsigned c:8; ...