1、查找镜像源
$ docker search centos
NAME DESCRIPTION STARS OFFICIAL
centos The official build of CentOS. 3857 [OK]

2、下载镜像
docker pull centos

3、查看已下载的镜像
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 3fa822599e10 6 days ago 204MB

4、启动镜像
$ docker run -itd centos /bin/bash
bce6d9a692b26fdf5f7642303c26ffdcaf26917cbfde703dea5c152c320f375d
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
bce6d9a692b2 centos "/bin/bash" About a minute ago Up About a minute

5、进入centos容器
$ docker attach bce6d9a692b2
[root@bce6d9a692b2 /]#
[root@bce6d9a692b2 /]#

6、centos默认没有ifconfig命令,配置ifconfig
[root@bce6d9a692b2 /]# ifconfig
bash: ifconfig: command not found
[root@bce6d9a692b2 /]#
[root@bce6d9a692b2 /]# yum search ifconfig
Loaded plugins: fastestmirror, ovl
base | 3.6 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/4): extras/7/x86_64/primary_db | 130 kB 00:00:01
(2/4): base/7/x86_64/group_gz | 156 kB 00:00:01
(3/4): updates/7/x86_64/primary_db | 3.8 MB 00:00:17
(4/4): base/7/x86_64/primary_db | 5.7 MB 00:00:21
Determining fastest mirrors
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: mirrors.aliyun.com
==================================================== Matched: ifconfig ==================================================
net-tools.x86_64 : Basic networking tools
[root@bce6d9a692b2 /]#
[root@bce6d9a692b2 /]#
[root@bce6d9a692b2 /]# yum install net-tools.x86_64
[root@bce6d9a692b2 /]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.3 netmask 255.255.0.0 broadcast 0.0.0.0
ether 02:42:ac:11:00:03 txqueuelen 0 (Ethernet)
RX packets 7560 bytes 11081500 (10.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5595 bytes 305703 (298.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

7、配置ssh
a、修改Centos root密码
# passwdChanging password for user root.New password: 123456BAD PASSWORD: The password is shorter than 8 charactersRetype new password: 123456passwd: all authentication tokens updated successfully.
b、安装openssh
yum install openssh-server -y
 c、生成公钥、私钥
[root@378ab88a06c8 /]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_keyGenerating public/private rsa key pair.Enter passphrase (empty for no passphrase): (直接回车)Enter same passphrase again: (直接回车)Your identification has been saved in /etc/ssh/ssh_host_rsa_key.Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub.The key fingerprint is:33:3c:34:49:e4:76:7d:45:cc:69:ac:46:85:ab:27:9e root@378ab88a06c8The key's randomart image is:+--[ RSA 2048]----+| .o +=+|| o . . o =o|| * . o = || + o = || S o || + o . || . + || E || |+-----------------+
[root@378ab88a06c8 /]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_ecdsa_keyGenerating public/private rsa key pair.Enter passphrase (empty for no passphrase): (直接回车)Enter same passphrase again: (直接回车)Your identification has been saved in /etc/ssh/ssh_host_ecdsa_key.Your public key has been saved in /etc/ssh/ssh_host_ecdsa_key.pub.The key fingerprint is:09:ac:b0:61:55:de:e8:4f:5e:20:d9:fc:1e:b6:d7:79 root@378ab88a06c8The key's randomart image is:+--[ RSA 2048]----+| ... || . o * || + B = || . + o o + || . . . S = || + + o . . || o o . o E|| . . || |+-----------------+
[root@378ab88a06c8 /]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_ed25519_keyGenerating public/private rsa key pair.Enter passphrase (empty for no passphrase): (直接回车)Enter same passphrase again: (直接回车)Your identification has been saved in /etc/ssh/ssh_host_ed25519_key.Your public key has been saved in /etc/ssh/ssh_host_ed25519_key.pub.The key fingerprint is:63:0d:b5:fb:55:a4:56:47:43:6d:68:c0:47:2e:84:24 root@378ab88a06c8The key's randomart image is:+--[ RSA 2048]----+| E.ooooo=*|| o.o..++=|| . . .o+..|| o . o . || S o . || . . . . || . || || |+-----------------+

d、编写启动脚本
# vi /run.sh#!/bin/bash/usr/sbin/sshd -D# chmod +x /run.sh

e、退出容器,保存镜像
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
bce6d9a692b2 centos "/bin/bash" About a minute ago Up About a minute
#从容器退出,但不停止容器: Ctrl+P+Q
[root@default ~]#
[root@default ~]#
$
$ docker ps

#回到Docker下面,停止容器: docker stop <容器ID>
$ docker stop bce6d9a692b2
bce6d9a692b2
#提交当前容器到镜像: docker commit <容器ID> <NAME:VERSION>

$ docker commit bce6d9a692b2 centos_me:v1.0
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
centos_me v1.0 4569dd302889 38 minutes ago 366MB

f、重新启动容器
$ docker run --net=host --name hdoop0 -d -p 5001:22 centos_me:v1.0 /run.sh
备注:1、“-p 5001:22” 是将容器的ssh端口22映射都宿主主机的5001端口上
2、‘--name hdoop0’重命名容器名

或者:docker run --name hadoop2 -d -p 5002:22 centos_me:v1.0 /usr/sbin/sshd -D

g、远程连接测试

原文参考:https://blog.csdn.net/yangym2002/article/details/79000241

在docker上部署centos的更多相关文章

  1. 定期从Docker上部署的MySQL备份数据

    前段时间公司停电,正巧赶上周一领导要开会要过一遍项目,然而项目所依赖的MySQL数据库是直接部署在宿主机,且因为各人部署方式不同的原因,花了很久才在开会前启动起来.于是开完会后,我第一件事就是把原先依 ...

  2. 【集群监控】Docker上部署Prometheus+Alertmanager+Grafana实现集群监控

    Docker部署 下载 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.re ...

  3. 在Docker上部署使用Azure CLI镜像

    Docker是非常流行的容器技术,在Docker中安装部署多种工具非常快速和方便:而Azure CLI是微软提供的可以在Linux/Mac上运行的跨平台命令行管理工具,本文介绍如何在Azure上安装部 ...

  4. ubuntu16.04环境下在docker上部署javaweb项目简单案例

    因为一些原因,接触到了docker,经过一番研究,总算是有了一些自己的看法,有什么不对的地方,希望多多指教. 废话不多说,首先我这里使用的虚拟机安装的是ubuntu16.04版本,其他版本应该也可以. ...

  5. 在Docker上部署自动更新ssl证书的nginx + .NET CORE

    突发奇想要搞一个ssl的服务器,然后我就打起了docker的主意,想着能不能搞一个基于Docker的服务器,这样维护起来也方便一点. 设想 想法是满足这么几点: .NET CORE on Docker ...

  6. 禅道在docker上部署与迁移

    一.禅道部署 1.下载地址 禅道开源版:   http://dl.cnezsoft.com/zentao/docker/docker_zentao.zip 数据库用户名: root,默认密码: 123 ...

  7. 【Linux】在docker上部署grafana+zabbix监控实录

    -------------------------------------------------------------------------------------------------   ...

  8. [原创]在Docker上部署mongodb分片副本集群。

    一.安装docker. 请参考:http://www.cnblogs.com/hehexiaoxia/p/6150584.html 二.编写dockerfile. 1.在根目录下创建mongod的do ...

  9. 在docker上部署mysql

    1.拉取官方镜像5.6的版本.(查看有哪些版本,可以在阿里云的镜像仓库查看,我配置的镜像是阿里云的) docker pull mysql:5.6 2.查看拉取的镜像,获取镜像id docker ima ...

随机推荐

  1. Android中通过Fragment进行简单的页面切换

    首先是activity中的布局 <?xml version="1.0" encoding="utf-8"?> <androidx.constr ...

  2. WAF的基础绕过

    方法分类: 1.HTTP参数污染绕过 2.HTTP Header头部欺骗绕过 3.HTTP参数溢出绕过 4.HTTP分块传输绕过 5.HTTP数据编码绕过 6.HTTP Pipline绕过(Keep- ...

  3. 2.Python函数/方法(method/function)详解

    1.什么是函数 它是一段功能代码,理解为一种功能行为,在内存中有空间区域,函数需要被调用才能执行(通过函数名来调用): 好处: 1).提高代码的复用性 2).提升代码的阅读性 3).增加代码的扩展性 ...

  4. Fragment基础学习

    https://blog.csdn.net/lmj623565791/article/details/37970961

  5. netty 4.x用户使用指南

    引言 问题 现在我们使用通用的应用程序或库来相互通信.例如,我们经常使用HTTP客户机从web服务器检索信息,并通过web服务调用远程过程调用.然而,通用协议或其实现有时不能很好地进行扩展.这就像我们 ...

  6. C语言二级选择题考点汇总-数据结构与算法-【考点一】 什么是算法

      1.算法及其基本特征 算法是指对方案的准确描述,是解决问题的执行步骤. 算法不等于数学上的计算方法,也不等于程序.程序是算法的载体. 算法的基本特征如下: (1)可行性:步骤可实现,执行结果可达到 ...

  7. java 快速生成树的方式

    public class XzqhDto { @ApiModelProperty("另加数据") private String label; @ApiModelProperty(& ...

  8. perfdog使用手册

    PerfDog(性能狗)测试须知 Android平台 ScreenShot(只支持USB模式) FPS(1秒内游戏画面或者应用界面真实平均刷新次数,俗称帖率/FPS) 1)Avg(FPS):平均帖率 ...

  9. Python第三方库requests的编码问题

    PS:这个解决方法可能很简单,但是这是平时的一些细节问题,所以有必要提醒一下! 首先代码不多,就是通过get方法去获取豆瓣首页信息,如图:但是会报UnicodeEncodeError: 'gbk' c ...

  10. js微信禁用右上角的分享按钮,和vue中微信页面禁用右上角的分享按钮的问题

    1.隐藏微信网页右上角的按钮 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { // 通过下面这个 ...