docker创建Webvirtmgr容器
链接:https://hub.docker.com/r/unws/webvirtmgr/
Webvirtmgr Dockerfile
拉起镜像并创建webvirtmgr用户和组(注意uid和guid必须为1010和容器内保持一致)
docker pull primiano/docker-webvirtmgr
sudo groupadd -g 1010 webvirtmgr
sudo useradd -u 1010 -g webvirtmgr -s /sbin/nologin -d /data/vm webvirtmgr
sudo chown -R webvirtmgr:webvirtmgr /data/vm
运行容器
docker run -d -p 8080:8080 -p 6080:6080 --name webvirtmgr -v /data/vm:/data/vm primiano/docker-webvirtmgr
安装完成后,需要进入容器,执行:
sed -i 's/172.17.42.1/0.0.0.0/g' /webvirtmgr/vrtManager/create.py
修改后才能用noVNC连接。
在被管理的宿主机上做如下配置
libvirtd configuration on the host
1、不存在则手动创建
cat /etc/default/libvirt-bin
start_libvirtd="yes"
libvirtd_opts="-d -l"
2、其中:
listen_addr推荐0.0.0.0,监听所有网卡
unix_sock_group为kvm主机的libvirt/libvirtd组,可用cat /etc/group查看,默认管理用户为root,如宿主机使用非root用户,可以修改unix_sock_group = "对应用户组"
cat /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
listen_addr = "172.17.42.1" ## Address of docker0 veth on the host
unix_sock_group = "libvirtd"
unix_sock_ro_perms = "0777"
unix_sock_rw_perms = "0770"
auth_unix_ro = "none"
auth_unix_rw = "none"
auth_tcp = "none"
auth_tls = "none"
3、#号代表需要注释的地方
cat /etc/libvirt/qemu.conf
# This is obsolete. Listen addr specified in VM xml.
# vnc_listen = "0.0.0.0"
vnc_tls = 0
# vnc_password = ""
4、重启libvirtd服务
systemctl restart libvirtd
5、
配置webvirtmgr
使用docker命令登录到webvirtmgr容器中,修改admin用户密码,初始密码为:admin/1234
cd /webvirtmgr
python manage.py changepassword admin
6、切换至webvirtmgr用户
su - webvirtmgr -s /bin/bash
7、在webvirtmgr用户下,创建到kvm主机的免登录
ssh-keygen
touch ~/.ssh/config && echo -e "StrictHostKeyChecking=no\nUserKnownHostsFile=/dev/null" >> ~/.ssh/config
chmod 0600 ~/.ssh/config
8、然后copy到kvm主机
ssh-copy-id root@192.168.122.100
登录webvirtmgr
打开浏览器,访问http://192.168.122.100:8080
输入用户密码即可
添加connection时,要保证已经配置容器中webvirtmgr用户到目标机用户的ssh免登录
注意:防火墙需要开放8080和6080,如开放端口后通过novnc连接kvm虚拟机仍提示连接超时,可尝试先关闭防火墙后重启容器再测试下是否可以正常通过novnc连接
由于在防火墙运行状态时,虚拟机xml配置文件中,vnc监听0.0.0.0时会导致novnc连接虚拟机失败,此时将listen监听改为本地即可
以上配置需要在虚拟机关机状态下修改
参考:https://www.jianshu.com/p/8be6b46843e5
https://blog.csdn.net/rariki/article/details/85156633
docker创建Webvirtmgr容器的更多相关文章
- Docker 创建 Redis 容器
Docker 创建 Redis 容器 # 配置文件映射: # -v /root/redis/redis.conf:/etc/redis/redis.conf # 数据目录映射: # -v /root/ ...
- 使用Docker创建数据容器
使用Docker创建数据容器 翻译自: Data-only container madness 1.什么是数据容器? 数据容器就是本身只创建一个volume供其他容器共享,创建完后即退出,不执行任何任 ...
- Docker(八)-Docker创建Nginx容器
获取Nginx镜像 最简单的方法就是通过 docker pull nginx 命令来创建 Nginx容器. $ sudo docker pull nginx 或者: $ sudo docker pul ...
- Docker创建Mysql容器并通过命令行连接到容器
拉取网易蜂巢的mysql-server:5.6 docker pull hub.c.163.com/nce2/mysql:5.6 创建mysql5.6容器 1master+3个slave docker ...
- 使用docker创建MySQL容器,并在springboot中使用
最近在看网上找了个springboot的项目试试,在项目中需要的MySQL版本是5.7,但是本机的MySQL只有5.5.因此想着在我的服务器上跑一个MySQL:5.7的容器解决这一问题,但是在实际操作 ...
- 使用docker创建mysql容器
1.拉取mysql容器 docker pull mysql:5.7
- docker创建mysql容器,并挂载数据+配置
新建:/my/mysql/my.cnf (准备挂载配置文件用) 将以下内容拷贝进去(或者启动一个docker的mysql,并且把/etc/mysql/my.cnf中的内容拷贝出来) # Copyrig ...
- Docker 创建 mongo 容器
获取 docker 认证 mongo 镜像: docker pull mongo 创建运行 mongo 容器: docker run -d -it -p : --name mongo3 -m 512M ...
- Docker(九)-Docker创建Selenium容器
SeleniumHQ官方项目:https://github.com/seleniumHQ/docker-selenium 项目目前快速迭代中. Selenium 这里主要针对的是 Selenium G ...
随机推荐
- vuex 的基本使用
工程目录 主要关注store 文件夹下的文件 store/index.js import Vue from 'vue' import Vuex from 'vuex' // import getter ...
- Django框架深入了解_02(DRF之序列化、反序列化)
序列化:将Python对象准换成json格式的字符串,反之即为反序列化 DRF的序列化使用过程: 使用drf的序列化组件 -1 新建一个序列化类继承Serializer -2 在类中写要序列化的字段 ...
- C语言实现简单的计算器(加、减、乘、除)
利用运算符做为swich case 语句条件,实现简单程序的编写;并且对输入的运算做判断,除数为零也需做判断; #include<stdio.h> int add(int a, int ...
- js指定日期时间加一天 ,判断指定时间是否为周末
function dateAdd(startDate) { startDate = new Date(startDate); startDate = +startDate + ***; startDa ...
- 终于明白六大类UML类图关系了
UML,全称Unified Modeling Language,统一建模语言.而UML图分为用例图.类图.对象图.状态图.活动图.时序图.协作图.构件图.部署图等9种图. 在面向对象语言中,我们经常看 ...
- [LOJ2002] [SDOI2017] 序列计数
题目链接 LOJ:https://loj.ac/problem/2002 洛谷:https://www.luogu.org/problemnew/show/P3702 Solution 考虑补集转换, ...
- BZOJ5104 Fib数列 二次剩余、BSGS
传送门 发现只有通项公式可以解决考虑通项公式 \(F_n = \frac{1}{\sqrt{5}}((\frac{1+\sqrt{5}}{2})^n - (\frac{1-\sqrt{5}}{2})^ ...
- easyui的学习总结
大家都知道easy-ui,样式虽然不怎么骚气,但是使用,小表格,很的大家欢喜 大致总结如下 :属性分为CSS片段和JS片段.CSS类定义:1.div easyui-window 生成一个window窗 ...
- (二) Windows 进行 Docker CE 安装(Docker Desktop)
参考并感谢 官方文档: https://docs.docker.com/docker-for-windows/install/ 下载地址 https://download.docker.com/win ...
- Ubuntu18.04防火墙相关
Ubuntu 18.04 LTS 系统中已经默认附带了 UFW 工具,如果您的系统中没有安装,可以在「终端」中执行如下命令进行安装: sudo apt install ufw 检查UFW状态 sudo ...