Rootop 服务器运维与web架构

2017-11-08
发表者 Venus
通过 docker-compose 服务编排已关闭评论

通过 docker-compose 服务编排

以下代码保存为:docker-compose.yml

version: '2'
services:
 # 容器名
 a1:
  # 基础镜像
  image: apache_del
  restart: always
  # 设置多个端口映射
  ports:
  - "8080:80"
  - "9090:80"
  # 目录映射
  volumes:
  - /home/dockermount:/mnt
  tty: true
  # 主机名
  hostname: a1
  # 域
  domainname: a.com
  # 容器间互联,可以不用
  links:
  - a2
  # 容器启动时执行的命令
  command: /usr/sbin/init
 a2:
  image: apache_del
  restart: always
  ports:
  - "8081:80"
  volumes:
  - /home/dockermount:/mnt
  tty: true
  hostname: a2
  domainname: a.com
  links:
  - a3
  command: /usr/sbin/init
 a3:
  image: apache_del
  restart: always
  ports:
  - "8082:80"
  volumes:
  - /home/dockermount:/mnt
  tty: true
  hostname: a3
  domainname: a.com
  command: /usr/sbin/init

# 可以通过hostname设置主机名,通过domainname设置域,结果主机名就是hostname.domainname,如 a1.a.com

docker-compose up -d 根据配置文件启动并后台运行
docker-compose down 停止并删除配置文件中的容器,不会删除其它容器
docker-compose ps

知识点:
1、
如果 docker-compose.yml 文件保存在 /root/file/compose 目录,生成的容器名为 上一层目录名字+容器名+数字序号,如: compose_a1_1

2、
如果用compose生成容器,容器间可以互相ping通,不需要加links参数。不像手动docker run 加link参数后,/etc/hosts会添加主机名和ip映射。

3、需要注意配置文件,空格的缩进。

2017-11-08
发表者 Venus
centos7下使用febootstrap制作docker基础镜像已关闭评论

centos7下使用febootstrap制作docker基础镜像

febootstrap – Bootstrap a basic Fedora system (like Debian debootstrap)
在debian或ubuntu中用 debootstrap

首先,先在centos6下下载 febootstrap 安装包,这个包在6中可以直接yum install,但是在7下无法yum安装。

1、通过 yumdownloader 下载相关包

[root@r1 ~]# yum install -y yum-utils
[root@r1 ~]# yumdownloader febootstrap febootstrap-supermin-helper fakechroot fakechroot-libs

# 默认下载到当前目录下。

scp到centos7中,一个个rpm -ivh安装。略…

# febootstrap 参数:
-i 安装rpm包

[root@node1 ~]# febootstrap -i yum -i net-tools -i bash -i wget -i apt-get -i iputils -i iproute -i openssh-server -i openssh-clients centos7.4 centos7.4-doc https://mirrors.aliyun.com/centos/7.4.1708/os/x86_64/
[root@node1 ~]# cd centos7.4-doc

# 将基础镜像打包导入到docker,镜像名centos7

[root@node1 centos7.4-doc]# tar -c . | docker import - centos7

# 启动一个容器

[root@node1 ~]# docker run -dit centos7 /bin/bash

# 进入容器

[root@node1 ~]# docker exec -it 731ad6189caa /bin/bash

# 安装apache

bash-4.2# yum install -y httpd

# 重启apache服务

bash-4.2# systemctl restart httpd

# 报错信息。
Failed to get D-Bus connection: Operation not permitted

网上有的资料说,docker run 容器的时候加 –privileged=true 参数,也不好用,说centos7.2版本会解决,我这centos7.4也没解决。
最后通过docker run容器的时候运行 /usr/sbin/init 才解决。

[root@node1 ~]# docker run -dit centos7 /usr/sbin/init

优化部分:
修改容器时区,编码等问题(调优),再commit为镜像,留做以后做为基础镜像。
1、复制用户默认配置文件到用户家目录

bash-4.2# cd /root
bash-4.2# cp /etc/skel/.bash* .

退出容器,再进入,就会发现前面的提示从 bash-4.2# 变为 [root@1c9c1050c670 ~]# 了

2、安装vi编辑器

[root@1c9c1050c670 ~]# yum install -y vi vim

3、配置 .vimrc ,否则打开中文的文件,会乱码。

[root@1c9c1050c670 ~]# cat .vimrc
set fileencodings=utf-8
set termencoding=utf-8
set encoding=utf-8

4、修改为CST时区

[root@1c9c1050c670 ~]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

提交到docker镜像

[root@node1 ~]# docker commit 1c9c1050c670 centos7.4

PS:
制作镜像的时候,已经安装了ssh,可以设置root密码,ssh登陆进去。设置密码前先安装 yum install -y passwd 否则找不到命令。

2017-10-30
发表者 Venus
修复windows远程桌面无法复制粘贴已关闭评论

修复windows远程桌面无法复制粘贴

@echo off
echo.
echo.
echo 修复windows远程桌面无法复制粘贴
echo.
echo.
echo.
echo 强制杀死 rdpclip.exe 进程
echo.
taskkill /F /IM rdpclip.exe
echo.
echo 杀死完成,重新启动 rdpclip.exe 进程
echo.
start rdpclip.exe
echo.
echo 修复成功
ping 127.0.0.1 1>nul 2>nul

2017-10-30
发表者 Venus
linux下通过blkid命令查看分区的文件系统及uuid已关闭评论

linux下通过blkid命令查看分区的文件系统及uuid

在修改fstab配置文件的时候,有个分区不知道是哪个设备。

UUID=a283da18-66a1-468f-bb51-2c2157b47b42 /home ext4 defaults 1 2

现在需要调整分区挂载点。但却不知道咋改。

后来发现一个命令,可以查看分区的挂载点,分区的uuid及文件系统

[root@admin ~]# blkid -o list
device fs_type label mount point UUID
--------------------------------------------------------------------------------------------
/dev/sda1 ext4 / 9955abd0-6265-4f6d-9ac2-ec8a9ed59666
/dev/sda2 swap <swap> 67f4cc59-92a3-4e88-afb2-ac28a6f40369
/dev/sda3 ext4 /www a283da18-66a1-468f-bb51-2c2157b47b42

这样通过uuid对应关系可以看到是sda3,重新调整 sda3 挂载到 /www

百度了下,还支持挺多参数:

[root@localhost ~]# blkid -s UUID /dev/sda5 #显示指定设备 UUID
/dev/sda5: UUID="cad7349a-601d-4df4-a46b-90e1ffc29b1b"

[root@localhost ~]# blkid -s UUID #显示所有设备 UUID
/dev/sda5: UUID="cad7349a-601d-4df4-a46b-90e1ffc29b1b"
/dev/sda1: UUID="d7899bc2-b08e-48cd-b904-54956c085951"

[root@localhost ~]# blkid -s LABEL /dev/sda5 #显示指定设备 LABEL
/dev/sda5: LABEL="Disk E"

[root@localhost ~]# blkid -s LABEL #显示所有设备 LABEL
/dev/sda1: LABEL="M-fM-^VM-0M-eM-^JM- M-eM-^MM-7"
/dev/sda5: LABEL="Disk E"

[root@localhost ~]# blkid -s TYPE #显示所有设备文件系统
/dev/sda5: TYPE="swap"
/dev/sda1: TYPE="ext4"

[root@localhost ~]# blkid -o device #显示所有设备
/dev/sda5
/dev/sda1

2017-10-23
发表者 Venus
win10恢复图片查看为 windows照片查看器已关闭评论

win10恢复图片查看为 windows照片查看器

保存以下为.reg文件,双击导入注册表。

Windows Registry Editor Version 5.00
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.jpg]
 @="PhotoViewer.FileAssoc.Tiff"
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.jpeg]
 @="PhotoViewer.FileAssoc.Tiff"
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.gif]
 @="PhotoViewer.FileAssoc.Tiff"
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.png]
 @="PhotoViewer.FileAssoc.Tiff"
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.bmp]
 @="PhotoViewer.FileAssoc.Tiff"
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.tiff]
 @="PhotoViewer.FileAssoc.Tiff"
 ; Change Extension's File Type
 [HKEY_CURRENT_USER\Software\Classes\.ico]
 @="PhotoViewer.FileAssoc.Tiff"
 

第一次打开图片会提示个选择打开程序。

选 windows照片查看器,并选中下面选择框。