一些有趣的docker镜像

docker一键安装脚本

wget -qO- get.docker.com | sh

镜像01:rastasheep/ubuntu-sshd (带ssh的ubuntu)
地址:https://hub.docker.com/r/rastasheep/ubuntu-sshd/

sudo docker run -d -p 22:22 rastasheep/ubuntu-sshd:16.04

用户名、密码为root

镜像02:itscaro/debian-ssh (带ssh的ubuntu)
地址:https://hub.docker.com/r/itscaro/debian-ssh/

sudo docker run -d -p 22:22 itscaro/debian-ssh

用户名、密码为root

镜像03:tutum/centos (带ssh的centos)
地址:https://hub.docker.com/r/tutum/centos/

sudo docker run -d -p 22:22 tutum/centos

(centos7:tutum/centos:centos7 )
用户名root,
密码随机,请执行 docker logs 查看
这个作者还有好多好东西:https://hub.docker.com/r/tutum/centos/

镜像04:alexwhen/docker-2048(游戏2048)
地址:https://hub.docker.com/r/alexwhen/docker-2048/

sudo docker run -d -p 80:80 alexwhen/docker-2048

镜像05:dorowu/ubuntu-desktop-lxde-vnc(noVNC、Firefox51)
地址:https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/

docker run -it -p 80:80 dorowu/ubuntu-desktop-lxde-vnc

Browse http://localhost/

镜像06:consol/centos-xfce-vnc (VNC、noVNC、密码、chrome、Firefox45)
地址:https://hub.docker.com/r/consol/ubuntu-xfce-vnc/

run -it -p 5901:5901 -p 6901:6901 -e “VNC_PW=my-new-password” -e VNC_RESOLUTION=800×600 consol/centos-xfce-vnc

默认VNC密码:vncpassword
VNC-Server (default VNC port 5901)
noVNC – HTML5 VNC client (default http port 6901)
其他相关

onsol/centos-xfce-vnc: Centos7 with Xfce4 UI session
consol/ubuntu-xfce-vnc: Ubuntu with Xfce4 UI session
consol/centos-icewm-vnc: dev Centos7 with IceWM UI session
consol/ubuntu-icewm-vnc: dev Ubuntu with IceWM UI session

镜像07:fish/peerflix-server (支持磁力,种子)
地址:https://hub.docker.com/r/fish/peerflix-server

docker run -it -p 9000:9000 fish/peerflix-server

Browse http://localhost:9000/

镜像08:jpillora/cloud-torrent(种子下载,搜索)
地址:https://hub.docker.com/r/jpillora/cloud-torrent/

docker run -d -p 3000:3000 -v /path/to/my/downloads:/downloads jpillora/cloud-torrent

Browse http://localhost:3000/

镜像09:jim3ma/google-mirror(google镜像,如需ssl要手动添加)
地址:https://hub.docker.com/r/jim3ma/google-mirror/

docker run -d -p 80:80 jim3ma/google-mirror

Browse http://localhost:80/

镜像⒑:google-reverse-proxy(google镜像,有ssl)
地址:https://hub.docker.com/r/jokester/google-reverse-proxy/

docker run -d –publish 54321:20081 –restart=always jokester/google-reverse-proxy

Browse https://ip:54321/

镜像⒒:forsaken-mail(临时邮箱)
地址:https://hub.docker.com/r/rockmaity/forsaken-mail/

docker run –name forsaken-mail -itd -p 25:25 -p 3000:3000 rockmaity/forsaken-mail

Browse http://ip:3000/

镜像⒓:imdjh/owncloud-with-ocdownloader(owncloud,torrent,aria2,youtube-dl)
地址:https://hub.docker.com/r/imdjh/owncloud-with-ocdownloader/

docker run -d -p 80:80 -e OWNCLOUD_VERSION=9.1.4 -v /var/www/html/data:/var/www/html/data imdjh/owncloud-with-ocdownloader

Browse http://ip/

镜像⒔:v2ray/official(v2ray)
地址:https://hub.docker.com/r/v2ray/official/

docker run -d -p 8001:8001 v2ray/official

镜像⒕:timonier/aria2
地址:https://hub.docker.com/r/timonier/aria2/

docker run -i -t -v /data:/data –net host timonier/aria2 –dir=/data –enable-rpc –rpc-listen-all=true

配合使用:timonier/webui-aria2(aria2web管理)
地址:https://hub.docker.com/r/timonier/webui-aria2/

docker run -i -t -p 80:80 timonier/webui-aria2

原文: http://blog.jialezi.net/?post=35

BBR 一键安装脚本

本脚本适用环境

系统支持:CentOS 6+,Debian 7+,Ubuntu 12+
虚拟技术:OpenVZ 以外的,比如 KVM、Xen、VMware 等
内存要求:≥128M

关于本脚本

1、本脚本已在 Vultr 上的 VPS 全部测试通过。
2、当脚本检测到 VPS 的虚拟方式为 OpenVZ 时,会提示错误,并自动退出安装。
3、脚本运行完重启发现开不了机的,打开 VPS 后台控制面板的 VNC, 开机卡在 grub 引导, 手动选择内核即可。
4、由于是使用最新版系统内核,最好请勿在生产环境安装,以免产生不可预测之后果。

使用方法
使用root用户登录,运行以下命令:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
chmod +x bbr.sh
./bbr.sh

安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。
重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:

uname -r

查看内核版本,含有 4.11 就表示 OK 了

sysctl net.ipv4.tcp_available_congestion_control

返回值一般为:
net.ipv4.tcp_available_congestion_control = bbr cubic reno

sysctl net.ipv4.tcp_congestion_control

返回值一般为:
net.ipv4.tcp_congestion_control = bbr

sysctl net.core.default_qdisc

返回值一般为:
net.core.default_qdisc = fq

lsmod | grep bbr

返回值有 tcp_bbr 模块即说明bbr已启动。

内核升级方法
如果是 CentOS 系统,执行如下命令即可升级内核:

yum --enablerepo=elrepo-kernel -y install kernel-ml kernel-ml-devel

CentOS 6 的话,执行命令:

sed -i 's/^default=.*/default=0/g' /boot/grub/grub.conf

CentOS 7 的话,执行命令:

grub2-set-default 0

如果是 Debian/Ubuntu 系统,则需要手动下载最新版内核来安装升级。
去这里下载最新版的内核 deb 安装包。
如果系统是 64 位,则下载 amd64 的 linux-image 中含有 generic 这个 deb 包;
如果系统是 32 位,则下载 i386 的 linux-image 中含有 generic 这个 deb 包;
安装的命令如下(以最新版的 64 位 4.9.3 举例而已,请替换为下载好的 deb 包):

dpkg -i linux-image-4.9.3-040903-generic_4.9.3-040903.201701120631_amd64.deb

安装完成后,再执行命令:

/usr/sbin/update-grub

最后,重启 VPS 即可。

原文:https://teddysun.com/489.html

CentOS安装一些常用包

常用的软件包
Python-pip

rpm -iUvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

#添加EPEL(Extra Packages for Enterprise Linux)源

yum update
yum install python-pip
pip install –upgrade pip

#自更新pip,因为EPEL里面的pip版本还是挺旧的

PHP7+Apache2 Httpd

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install php70w php70w-cli php70w-opcache php70w-common

linux 多账户下实现Apache虚拟主机之间的相互隔离设置

合租了linux服务器,作为管理员以及和合租者都希望将自己的虚拟主机目录和别人的隔离(因为每个用户都有linux登录账户),这个问题起初也烦恼我很久,不过很快我就有了解决办法。

1.假设 有两个站点 siteA 和 siteB(假设这两个站点的目录在/var/www/下)
2.使用root账户登录终端建立两个帐号 userA 和 userB, 要满足使用userA登录时候只能有权限进入siteA目录,登录siteB只能进入siteB目录

useradd userA
useradd userB

3.linux 在新建账户的时候如果没有为此帐号分配组,则默认会建立以该帐号同名的组,于是上面就自动产生了userA 和 userB组
4.然后将siteA 和 siteB这两个目录的所属

cd /var/www
chgrp userA siteA/ #注意这里的userA是同名的组名非帐户
chgrp userB siteB/

5.然后修改两个目录的访问权限,只能同一个组可有访问和修改

chmod 755 siteA/ #755的权限就是文件的创建者和所属组可有读取,写入
chmod 755 siteB/

6.此时我们就实现了不同的用户组账户进入对应的目录的权限,但是此时Apache没有读取这两个目录的权限,因为Apache不属于上述任何组
7.启动Apache的默认账户一般是 apache (如果没有建立一个)
8.如果将Apache账户 分别加入 userA 和 userB组,那么apache 就有权限可有访问到这两个目录了

gpasswd -a apache userA #将apache账户分别加入 userA组和 userB组
gpasswd -a apache userB
service httpd restart

原文:http://blog.css-js.com/linux/linux-centos-apache-dirset.html