Docker自制镜像之私有云平台完整版
一、Docker安装
二、Docker操作
搜索中央仓库可用镜像
$ docker search centos
2.1【镜像操作命令】
2.1.1 查看所有镜像docker images删除所有镜像
$ docker rmi $(docker images -q)
2.1.2 删除没有使用的镜像
docker rmi -f $(docker images | grep "" | awk "{print \$3}")
2.2【容器操作命令】
2.2.1 查看所有容器(包括未运行)
$ docker ps -a
2.2.2 删除所有未运行容器(https://www.jb51.net/article/111073.htm)
$ docker rm $(docker ps -a -q)
2.2.3 删除停止的容器
$ docker rm $(docker ps --all -q -f status=exited)
2.2.4 创建容器(暂不推荐)
$ docker create --name=wang-base-node [增加可选参数]
2.2.5 创建并启动容器(推荐,注:显示指定--network=host 代替默认的 bridge 模式可能性能更好,--privileged表示以超级权限启动,-d表示以后台启动,-v表示共享挂载宿主机与容器目录(宿主机目录:容器目录)可以写多个 如:-v /opt/apps:/opt/apps -v /mnt/disk1:/mnt/disk1表示分别挂载两个目录,重要:这里以/usr/sbin/init作为入口启动的好处是避免在centos7下默认sshd/systemctl/d-bus等服务不会自启动的问题)
$ docker run -tid -v /mnt/disk1:/mnt/disk1 --privileged --name=wang-base-node --hostname=wang-base-node --network=bridge wang-centos7-base /usr/sbin/init [其他可选参数]
或增加端口映射的语法(宿主机代理端口:容器端口,注:仅在--network=bridge模式下有效):
$ docker run -tid -p 58081:8081 -v /opt/apps:/opt/apps --privileged --name=wang-base-node --hostname=wang-base-node --network=bridge wang-centos7-base /usr/sbin/init
2.2.6 后台启动容器
$ docker start [containerID]
2.2.7 进入某个容器
$ docker exec -it [containerID] bash
2.3【自制镜像的导入和导出】
2.3.1 保存容器
$ docker commit [containerID] wang-centos7-base
2.3.2 导出镜像到本地文件
$ docker export [containerID] > wang-centos7-base.tar
2.3.3 导入本地镜像(:latest表示指定tag 可选)
$ docker import - wang-centos7-base:latest < wang-centos7-base.tar
2.3.4 宿主机与容器文件拷贝
$ docker cp [OPTIONS] srcPath containerID:destPath
$ docker cp [OPTIONS] containerID:srcPath destPath
2.4【Docker CentOS7 安装SSH】
2.4.1 安装passwd,openssl,openssh-server
$ yum install passwd openssl openssh-server -y
启动sshd:
[root@wang-centos7-base /]# /usr/sbin/sshd -D
这时报以下错误:
Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ed25519_key
执行以下命令解决:
[root@wang-centos7-base /]# ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
[root@wang-centos7-base /]# ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
[root@wang-centos7-base /]# ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''
然后,修改 /etc/ssh/sshd_config 配置信息:
UsePAM yes 改为 UsePAM no
UsePrivilegeSeparation sandbox 改为 UsePrivilegeSeparation no
[root@wang-centos7-base /]# sed -i "s/#UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config
[root@wang-centos7-base /]# sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config
修改完后,重新启动sshd(注:此启动仅供测试sshd服务是否正常,重新创建容器时可显示指定启动参数,见1.2创建容器)
[root@wang-centos7-base /]# /usr/sbin/sshd -D > /var/log/sshd.log
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
grafana+prometheus快速搭建MySql监控系统实践
版权声明:作者:汤青松 https://blog.csdn.net/u013431141/article/details/81633229 一、背景 对于LNMP环境下的开发者来说,mysql是非常重要的一环,同时mysql的性能监控也是开发者所需要关注的一环;如果大家使用阿里云的RDS会感觉到其监控功能非常好用,但如果开发者使用的是自建数据库,该怎么去搭建则需则需要去考虑一番了。 在prometheus和grafana未普及之前,要实现mysql的搭建确实要费一番工夫的,不过现在则很简单就可以实现mysql的监控了。 笔者之前写过一篇grafana+prometheus的基础篇,因此本文中有些较为基础的操作就省略了,读者如果有不清晰的地方,建议去看一下基础篇,参考链接:grafana+ prometheus+php 监控系统实践 二、操作概要 安装Mysqld-Exporter 增加prometheus任务 导入mysql仪表盘 功能验证与展示 三、安装Mysqld-Exporter 要实现监控mysql的状态,就需要获取mysql的一些数值,然后把这些数值传递给prometheus...
- 下一篇
docker学习系列4 简单总结 docker-curriculum
来源:https://docker-curriculum.com/ 这篇文章不错,可以作为第一篇 docker 的入门,我简单总结了下。顺便重温下之前的内容。 如果你是刚学docker,最好跟着敲一遍。 安装,略,自己去官方文档查 执行 docker pull busybox 去官方拉镜像 BusyBox 是一个集成了三百多个最常用Linux命令和工具的软件。 简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。 使用 docker images 查看镜像 创建容器启动 docker run busybox 会看到啥都没有发生,因为没有提供任何命令,容器启动后,运行个空命令就退出了。 如果提供个命令呢 docker run busybox echo "hello from busybox" 这个能看到输出了,但是容器执行完依然退出了。 我想查看正在运行的容器 docker ps 没有任何输出 试试 docker ps -a 可以看到刚刚运行过的容器了,注意 status 列 image.png 如果想以...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 设置Eclipse缩进为4个空格,增强代码规范
- Mario游戏-低调大师作品
- MySQL8.0.19开启GTID主从同步CentOS8
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度