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 ...
随机推荐
- Influx Sql系列教程四:series/point/tag/field
influxdb中的一条记录point,主要可以分为三类,必须存在的time(时间),string类型的tag,以及其他成员field:而series则是一个measurement中保存策略和tag集 ...
- c++ std::cout重定向到文件
cout默认是与监视器(屏幕)相连,cout出来的内容会输出到屏幕上,通常是会在命令行窗口之中.但有时,我们希望将cout出来的具体日志.错误信息写到某个文件之中,而屏幕上仅仅显示出当前进行的任务,以 ...
- web版本的用户登陆票据 FormsAuthenticationTicket
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, "username", DateTime.N ...
- Ant Design Vue select下拉列表设置默认值
在项目中需要为Ant Design Vue 的 select 组件设置一个默认值,如下图所示的状态下拉选择框,默认选择全部 代码如下: <a-select v-model="query ...
- Spring MVC异常处理代码完整实例
Spring MVC异常处理流程: 提供构造方法传值: 配置异常处理器的bean
- TweenLite参数用法中文介绍
TweenLite是一个缓动的类包,功能强大,并且易于使用,为了更多的(E文欠佳的.初学的)朋友了解它,使用它,特此翻译了一下TweenLite类文档中的说明文件,主要是对参数的说明,希望对大家有用. ...
- [LOJ6432] [PKUSC2018] 真实排名
题目链接 LOJ:https://loj.ac/problem/6432 Solution 假设我们当前要算\(x\)的答案,分两种情况讨论: \(x\)没被翻倍,那么\([a_x/2,a_x]\)这 ...
- charles4.0 request和response的显示设置
点击右上角的设置按钮 点击preferences 切换到viewers,取消勾选Combine request and response,点击保存即可
- C#使用Selenium
介绍: Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla ...
- Ubuntu 18.04 上使用xrdp远程桌面连接(Windows远程桌面连接)
Ubuntu18.04设置#安装xrdpsudo apt-get install xrdp #安装vnc4serversudo apt-get install vnc4server tightvncs ...