CentOS8.2.2004安装Python3.8.5通过runlike查看容器的docker run启动参数

一、更新yum源


yum update

二、安装依赖项


yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make

三、yum源只有3.8.0版本,所以还是使用源码安装


cd Your_dir
wget https://cdn.npm.taobao.org/dist/python/3.8.5/Python-3.8.5.tgz
tar -zxvf Python-3.8.5.tgz
cd Python-3.8.5
mkdir /usr/local/python3.8.5
./configure --prefix=/usr/local/python385 --enable-optimizations;make;make install
ln -s /usr/local/python385/bin/python3 /usr/bin/python3  
ln -s /usr/local/python385/bin/pip3 /usr/bin/pip3

四、安装runlike


pip3 install runlike

五、查看容器启动参数
runlike -p <容器名>|<容器ID>


runlike -p bind

docker run \
–name=bind \
–hostname=a788eba0353d \
–mac-address=02:42:ac:11:00:02 \
–env=WEBMIN_ENABLED=false \
–env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
–env=BIND_USER=bind \
–env=BIND_VERSION=9.16.1 \
–env=WEBMIN_VERSION=1.941 \
–env=DATA_DIR=/data \
–volume=/named:/data \
–expose=10000 \
–expose=53 \
-p 53:53/udp \
–restart=no \
–label=’maintainer=sameer@damagehead.com’ \
–detach=true \
sameersbn/bind:latest \
/usr/sbin/named

使用IDM下载YOUTUBE视频(用v2ray fq)

外网有一些好的视频,看到了想保存下来,因为我使用v2ray和idm,所以研究了一会儿,其实很简单。

打开idm界面,选择下载-选项,找到代理服务器TAB,我们看到默认是不使用代理/socks;这里注意了,我们要点击使用系统设置,然后呢,点击右上方从IE获取,就会自动变到使用自动脚本那里,地址也自动写好了,然后我们只要在youtube上下载想要的视频及相应的分辨率就可以了。

关于CentOS 8.2.2004 Docker环境下应用sameersbn/bind镜像的若干需要问题

背景:
前期用pyhon写的一个软件来做dns域名劫持,dig响应正常,解析正常,但同事监控机经常报警,dns响应时间占比在四分之三,经过一番折腾,还是这个软件的事情,所以单独给同事搭建了一台dns私网服务器,为了便捷快速搭建完成,选择了sameersbn/bind镜像。
服务器:CentOS 8.2.2004
Docker引擎版本:19.03.12(使用非root用户运行)

搭建过程:


docker pull sameersbn/bind

启动过程


docker run --name='bind' -d -p 53:53/udp -e WEBMIN_ENABLED=false -v /named:/data sameersbn/bind:latest

我不用WEB来配置bind,所以就把WEB服务关了,/named目录(也可为其它目录)为数据目录,新建容器后将在该目录下生成bind/ect和bind/lib目录,其中etc目录下为DNS的相关配置文件。配置和配置其他bind服务器一致,就不在这里表述了。下面主要说说碰到的问题。

碰到的问题(很重要,说的人很少,但是能节省你的大部分时间,因为我已经以身试法了)
1、需要提前在主机上建立工作目录 /named
2、不需要关闭主机防火墙,docker启动镜像的时候会自动开通防火墙访问规则
3、报chcon: can’t apply partial context to unlabeled file 错误是因为我们关闭了selinux,需要恢复原状,即修改/etc/selinux/config文件,修改为SELINUX=enforcing,修改后必须重启服务器
4、很多人没说过的docker加载目录权限问题,我们第一次使用


docker ps -a

发现容器竟然自动退出了,然后我们要知道发生了什么,使用


docker logs bind

报错如下
mkdir: cannot create directory ‘/named/bind’: Permission denied
找了很多教程,没有人说过原因,在github上找到了问题的原因
https://github.com/sameersbn/docker-bind/issues/15
在执行docker run命令之前,需要做如下操作


chcon -Rt svirt_sandbox_file_t /named

执行后就可以正常启动容器了。

关于Nginx和443端口不得不说的故事

今天用RPM包安装nginx

nginx -V

可以看见SSL模块已经正常安装,配置的时候马大哈了,配置了这样的东西

server {
listen 443;

重启nginx,443端口起来了,没报错,但是https://IP 怎么也访问不了;但是http://IP:443
就可以访问,想了半天,后来检查发现应该配置为如下

server {
listen 443 ssl;

放这里给大家乐呵乐呵!

nginx 1.18.0 使用RPM安装的支持网站

有台机器是CentOS7,因为我比较懒,所以采用RPM包形式安装,用的都挺好,就是需要安装插件的时候要选用不同的MOD包,好在nginx官方提供了基本的mod包

http://nginx.org/packages/rhel/7/x86_64/RPMS/

不过远远不够,比如nginx-module-fancyindex,现在下载需要paypal支付,在这里我提供一个网站,趁现在可以下,大家可以先存着

https://www.hpc.jcu.edu.au/repos/jcu_eresearch/centos-7/x86_64/