海运的博客

使用文件手工挂载SWAP

发布时间:September 26, 2014 // 分类:Linux基础 // 1 Comment

dd if=/dev/zero of=/swap bs=1024 count=524288 
mkswap /swap
swapon /swap

开机加载:

cat /etc/fstab 
/swap  swap  swap    defaults 0 0

Docker基础使用

发布时间:September 24, 2014 // 分类:Docker // No Comments

Centos下直接安装:

yum install docker-io
/etc/init.d/docker start

使用docker官方源安装:

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

使用mirror,修改/etc/docker/daemon.json,然后重启docker。

{
  "registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://hub-mirror.c.163.com"
  ]
}

查看mirror是否生效:

docker info

搜索镜像:

docker search ubuntu

从官网下载镜像:

docker pull ubuntu:19.10
#使用mirror下载镜像
docker pull dockerhub.azk8s.cn/library/ubuntu:19.10

也可使用Openvz模板制作镜像:

wget http://download.openvz.org/template/precreated/suse-13.1-x86_64-minimal.tar.gz
cat suse-13.1-x86_64-minimal.tar.gz|docker import - suse:13.1

列出所有镜像:

docker images

查看镜像配置信息:

docker inspect ubuntu:19.10

从指定镜像生成一个容器并执行命令,exit后容器会结束,按键CTRL+P+Q退出容器不结束。

docker run --name test -i -t --hostname "docker-19.10" --network host ubuntu:19.10 /bin/bash
#指定name,后续可使用docker start 容器名称启动
#-p <host_port:contain_port>
#-P随机端口
#-v <host_path:container_path>

复制文件到容器内:

docker cp file test:/tmp/

查看所有的容器,包含已退出的:

docker ps -a

重新启动已退出的容器:

docker start <容器ID>/<容器名称>
#启动并attach
docker start -ai <容器ID>/<容器名称>

attach运行的容器:

docker attach <容器ID>

build镜像,Dockerfile文件:

FROM ubuntu:19.10
RUN apt-get update && apt-get -y install vim 
docker build -t vim . -f Dockerfile 

将指定容器保存为镜像:

docker commit <容器ID> <镜像名字>

保存镜像:

docker save ubuntu:19.10 > ubuntu.tar

导入镜像:

docker load < ubuntu.tar

导出导入容器:
导入镜像:

docker export <容器ID> > export.tar  
cat export.tar | docker import - export:latest 

删除docker容器:

docker rm <容器ID>
#删除所有,先停止所有docker容器
docker stop `docker ps -a -q`
docker rm `docker ps -a -q`

删除镜像IMAGE:

docker rmi <镜像id>
#删除所有
docker rmi `docker images -q`

容器运行中文件操作:

docker inspect -f '{{.Id}}' <容器id或name>
ls /var/lib/docker/devicemapper/mnt/<上面命令返回的id>/rootfs/etc/

执行运行中容器命令,如进入bash:

docker exec -it <容器id或name> bash

进入运行中容器:

PID=$(docker inspect --format {{.State.Pid}} <container_name_or_ID>)
nsenter --target $PID --mount --uts --ipc --net --pid

运行中容器使用iptables端口眏射:

#获取容器IP
docker inspect <容器id或name>|grep IPAddress
#DNAT
iptables -t nat -A PREROUTING -p tcp --dport 8001 -j DNAT --to-destination 172.17.0.7:80

更详细的资料:http://blog.tankywoo.com/docker/2014/05/08/docker-4-summary.html
自建私有仓库:http://www.vpsee.com/2013/11/build-your-own-docker-private-regsitry-service/
https://github.com/docker-practice/docker-registry-cn-mirror-test
https://yeasy.gitbooks.io/docker_practice/

一些虚拟化工具

发布时间:September 24, 2014 // 分类:虚拟化 // No Comments

vagrant
docker
virtualenv
rvm

Centos6安装HHVM

发布时间:September 24, 2014 // 分类:HHVM // No Comments

安装源:

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
cd /etc/yum.repos.d
wget http://www.hop5.in/yum/el6/hop5.repo

安装HHVM:

yum install hhvm --setopt=protected_multilib=false
关闭多版本检查,libgcc i686版本冲突
--setopt=protected_multilib=false

HHVM集成的PHP扩展:
https://github.com/facebook/hhvm/wiki/Extensions

端口扫描工具

发布时间:September 20, 2014 // 分类:网络工具 // No Comments

zmap
masscan
Nscan

分类
最新文章
最近回复
  • : linux系统上单个网卡多条宽带拨号获取公网IP,外网可以访问这些IP,有偿! Q:25299...
  • 硅谷少年: 非常有用,感谢分享
  • spartan2: https://dashboard.hcaptcha.com/welcome_accessib...
  • 海运: 应该能,在购买页面先手工跳过cf机器验证,后续一定时间内不更换ip应该不会再次验证。
  • spartan: 大佬斯巴达开启了CF的机器识别验证,请问插件能自动跳过吗? 另外这个脚本有没有简单使用说明,新...
  • vincent: 膜拜大佬
  • 海运: proxy-header或proxy_protocol
  • liangjw: 如果是 内部调用 或者 中间存在 代理 而上一个代理又在内网 ,那怎么处理来自代理私有IP?
  • chainofhonor: 感谢,用dnsmasq设置自动判断BIOS和UEFI成功了
  • 海运: 不好意思,这个是很多年前的,现在也许已经不适用,我现在也不用多线了。