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. redis学习三连奏,绝对让你彻底吃透分布式架构精髓

    2020年初,远程办公与直播授课成为国民刚需,腾讯因此免费开放可支持300人同时在线会议的“腾讯会议”.一时之间,这款软件的用户呈爆发性增长,据统计,腾讯会议一天就有近较100倍日常的会议数量. 谈及 ...

  2. string_random

    1.随机数 import random 0-1间的随机浮点数,random.random() 指定区间随机浮点数,random.uniform(a,b) 指定区间随机整数(闭区间),random.ra ...

  3. day 9 深浅拷贝

    浅copy 现有数据 data = { "name":"alex", "age":18, "scores":{ &quo ...

  4. 【NLP】暑假课作业1 - 中文分词(前向匹配算法实现)

    作业任务: 使用98年人民日报语料库进行中文分词训练及测试. 作业输入: 98年人民日报语料库(1998-01-105-带音.txt),用80%的数据作为训练集,20%的数据作为验证集. 运行环境: ...

  5. hibernate.exception.GenericJDBCException: could not extract ResultSet 解决办法

    这句话翻译过来就是无法提取ResultSet 我在联查表的视图的时候发现的问题,明明之前好好的 那么你就得想想了 你再把错误信息往上翻翻,能不能看到   no viable alternative a ...

  6. 使用 Express 脚手架

    安装: npm install -g express-generator 创建项目: express myapp 安装依赖 install dependencies: > npm install ...

  7. MySQL 8 服务器插件

    安装插件 内置插件时服务器能够自动识别的,通常在服务器启动时加载内置插件. 在mysql.plugin表中注册的插件,这种插件不同于内置插件(内置插件不需要注册),通常在服务器启动时会加载mysql. ...

  8. Vasya and a Tree CodeForces - 1076E

    很好的思维 转化为对树上的深度差分 回朔的思想 对查询离线 #include<iostream> #include<cstdio> #include<cmath> ...

  9. urllib模块提供的urlretrieve()函数使用

    urllib模块提供的urlretrieve()函数,urlretrieve()方法直接将远程的数据下载到本地 注意:若是网站有反爬虫的话这个函数会返回 403 Forbidden 参数url:传入的 ...

  10. Tomcat目录详解

    最近在项目部署时,有时通过使用公司提供的Jdoc容器引擎部署上线项目,有时使用Jenkins自动化部署,甚至有的项目直接打war包上传到弹性云的tomcat中进行部署.虽然部署方式略有不同,但是归根结 ...