一、概述1.1 什么是dockerDocker 诞生于 2013 年初,由 dotCloud 公司(后改名为 Docker Inc)基于 Go 语言实现并开源的项目。此项目后来加入 Linux基金会,遵从了 Apache 2.0 协议
Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。Docker 是在 Linux 容器技术(LXC)的基础上进行了封装,让用户可以快速并可靠的将应用程序从一台运行到另一台上。
使用容器部署应用被称为容器化,容器化技术的几大优势:
灵活:甚至复杂的应用也可以被容器化
轻量:容器利用和共享宿主机内核,从而在利用系统资源比虚拟机更加的有效
可移植:你可以在本地构建,在云端部署并在任何地方运行
松耦合:容器是高度封装和自给自足的,允许你在不破环其他容器的情况下替换或升级任何一个
可扩展:你可以通过数据中心来新增和自动分发容器
安全:容器依赖强约束和独立的进程
1.2 和传统虚拟机的区别容器在Linux上本地运行,并与其他容器共享主机的内核。它运行一个离散进程,不占用任何其他可执行文件更多的内存,从而使其轻巧。
1.3 相关链接官网:htt ...
1. 变量1234#!/bin/bashmsg="hello world"echo $msg
变量名的命名须遵循如下规则:
命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用bash里的关键字(可用help命令查看保留关键字)。
2. 传参12345#!/bin/bashecho "执行的文件名:$0";echo "第一个参数为:$1";echo "第二个参数为:$2";echo "第三个参数为:$3";
脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……另外,还有几个特殊字符用来处理参数:
参数
说明
$#
传递到脚本的参数个数
$*
以一个单字符串显示所有向脚本传递的参数。如"$*"用「”」括起来的情况、以”$1 $2 … $n”的形式输出所有参数。
$$
脚本运行的当前进程ID号
...
引入主题及组件12345678910111213141516git submodule add https://github.com/hugo-fixit/FixIt.git themes/FixItgit submodule add https://github.com/hugo-fixit/cmpt-translate.git themes/cmpt-translategit submodule add https://github.com/hugo-fixit/component-projects.git themes/component-projectsgit submodule add https://github.com/hugo-fixit/hugo-json-feed.git themes/hugo-json-feedgit submodule add https://github.com/hugo-fixit/shortcode-mmt-netease.git themes/shortcode-mmt-neteasegit submodule add https:// ...
启用https
1.购买免费证书登录阿里云 -> 控制台 -> 安全(云盾) -> CA证书服务 -> 购买证书
2.补全证书信息点击补全,绑定域名
3.下载并配置选择下载 证书for nginx
上面这个页面有相关的配置信息,下面简单介绍:
① 将下载文件中的 *.pem、*.key, 拷贝到 nginx 目录下 的 cert , 当然也可以是其他目录② 修改 nginx.conf
12345678910111213141516171819202122232425server { listen 443 ssl; server_name xiangzhangshugongyi.com; ssl_certificate cert/214487958220243.pem; ssl_certificate_key cert/214487958220243.key; ssl_session_cache shared:SSL:1m; ssl_session_timeou ...
使用 vim 过程中发现 esc 和 ctrl 按键很难按,小拇指没有那么长啊~~,而 caps_lock 和 alt_r(右alt) 很少用。
本教程将 esc 和 caps_lock 两个按键交换, alt_r(右alt) 改为 ctrl。
一、 esc 与 caps_lock 按键交换①. 创建 .xmodmaprc 文件。②. 加入以下内容:
1234remove Lock = Caps_Lockadd Lock = Escapekeysym Caps_Lock = Escapekeysym Escape = Caps_Lock
③. 执行 xmodmap .xmodmaprc 使之生效。
二、 将 右alt 改为 ctrl①. 查看需要修改键位的 keysym通过 xev | grep keycode 获取右 alt 的 keysym 为 Alt_R。如下图所示:
②. 查看 Alt_R 是哪个 modifier 使用的通过 xmodmap -pm 查看,发现 Alt_R 是作为 modifier mod1 使用的。如下图所示:
③. 修改 modifier
12xmod ...
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们认为8个开关状态作为原子单位很好,于是他们把这称为”字节”。
再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出更多的状态,状态开始变来变去。他们看到这样是好的,于是它们就这机器称为”计算机”。
开始计算机只在美国用。八位的字节一共可以组合出256(2的8次方)种不同的状态。
他们把其中的编号从0开始的32种状态分别规定了特殊的用途,一但终端设备或者打印机遇上这些约定好的字节时,就要做一些约定的动作。遇上 00x10, 终端就换行,遇上0x07, 终端就向人们嘟嘟叫,例好遇上0x1b, 打印机就打印反白的字,对于终端就用彩色显示字母。他们看到这样很好,于是就把这些0x20(十进制32)以下的字节状态称为”控制码”。
他们又把所有的空格、标点符号、数字、大小写字母分别用连续的字节状态表示,一直编到了第127号,这样计算机就可以用不同字节来存储英语的 文字了。大家看到这样,都感觉很好,于是大家都把这个方案叫做 ANSI 的”Ascii”编码(American St ...
docker创建容器
1. iptables failed创建 tale 容器时,如下命令:
1234docker run -d --privileged --hostname tale --name tale \-v /etc/localtime:/etc/localtime:ro \-v /home/tale:/var/tale_home -p 127.0.0.1:234:9000 \-m 1024m --memory-swap -1 tale:1.0
然后就报了以下错误:
12docker: Error response from daemon: driver failed programming external connectivity on endpoint tale (263775ff559176224428ec44dcec416a1c20e6c69198d9760b38f35849914260): iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 127.0.0.1 --dport 234 -j ...
介绍FirewallD 提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具。它支持 IPv4, IPv6 防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口。
安装123$ yum install firewalld## 如果需要图形界面的话,则再安装$ yum install firewall-config
zoneFirewall 能将不同的网络连接归类到不同的信任级别。
1$ firewall-cmd --list-all-zones #查看所有zone信息
Zone 提供了以下几个级别:
drop: 丢弃所有进入的包,而不给出任何响应
block: 拒绝所有外部发起的连接,允许内部发起的连接
public: 允许指定的进入连接
external: 同上,对伪装的进入连接,一般用于路由转发
dmz: 允许受限制的进入连接
work: 允许受信任的计算机被限制的进入连接,类似 workgroup
home: 同上,类似 homegroup
internal: 同 ...

