Docker CE 镜像源站 使用官方安装脚本自动安装 (仅适用于公网环境)
1 |
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun |
手动安装帮助 (阿里云ECS可以通过内网安装,见注释部分内容) Ubuntu 14.04 16.04 (使用apt-get进行安装)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# step 1: 安装必要的一些系统工具 sudo apt-get update sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common # step 2: 安装GPG证书 curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - # Step 3: 写入软件源信息 sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" # Step 4: 更新并安装 Docker-CE sudo apt-get -y update sudo apt-get -y install docker-ce 注意:其他注意事项在下面的注释中 # 安装指定版本的Docker-CE: # Step 1: 查找Docker-CE的版本: # apt-cache madison docker-ce # docker-ce | 17.03.1~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages # docker-ce | 17.03.0~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages # Step 2: 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.1~ce-0~ubuntu-xenial) # sudo apt-get -y install docker-ce=[VERSION] # 通过经典网络、VPC网络内网安装时,用以下命令替换Step 2、Step 3中的命令 # 经典网络: # curl -fsSL http://mirrors.aliyuncs.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - # sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" # VPC网络: # curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - # sudo add-apt-repository "deb [arch=amd64] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" |
CentOS 7 (使用yum进行安装)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # Step 3: 更新并安装 Docker-CE sudo yum makecache fast sudo yum -y install docker-ce # Step 4: 开启Docker服务 sudo service docker start 注意:其他注意事项在下面的注释中 # 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。 # vim /etc/yum.repos.d/docker-ce.repo # 将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1 # # 安装指定版本的Docker-CE: # Step 1: 查找Docker-CE的版本: # yum list docker-ce.x86_64 --showduplicates | sort -r # Loading mirror speeds from cached hostfile # Loaded plugins: branch, fastestmirror, langpacks # docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable # docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable # docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable # Available Packages # Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos) # sudo yum -y install docker-ce-[VERSION] # 注意:在某些版本之后,docker-ce安装出现了其他依赖包,如果安装失败的话请关注错误信息。例如 docker-ce 17.03 之后,需要先安装 docker-ce-selinux。 # yum list docker-ce-selinux- --showduplicates | sort -r # sudo yum -y install docker-ce-selinux-[VERSION] # 通过经典网络、VPC网络内网安装时,用以下命令替换Step 2中的命令 # 经典网络: # sudo yum-config-manager --add-repo http://mirrors.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo # VPC网络: # sudo yum-config-manager --add-repo http://mirrors.could.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo |
安装校验
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
root@iZbp12adskpuoxodbkqzjfZ:$ docker version Client: Version: 17.03.0-ce API version: 1.26 Go version: go1.7.5 Git commit: 3a232c8 Built: Tue Feb 28 07:52:04 2017 OS/Arch: linux/amd64 Server: Version: 17.03.0-ce API version: 1.26 (minimum version 1.12) Go version: go1.7.5 Git commit: 3a232c8 Built: Tue Feb 28 07:52:04 2017 OS/Arch: linux/amd64 Experimental: false |
参考资料 其他关于旧版本Docker卸载以及测试开发版本Docker安装的帮助,可以参考官方文档的说明进行安装 from:https://yq.aliyun.com/articles/110806?spm=5176.8351553.0.0.35501991rH2jyp
View Details简介 CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本;是一个稳定,可预测,可管理和可复制的免费企业级计算平台。 配置方法 1. 备份
1 |
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup |
2. 下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/ CentOS 6
1 |
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-6.repo |
或者
1 |
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-6.repo |
CentOS 7
1 |
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo |
或者
1 |
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo |
CentOS 8
1 |
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo |
或者
1 |
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo |
3. 运行 yum makecache 生成缓存 4. 其他 非阿里云ECS用户会出现 Couldn’t resolve host 'mirrors.cloud.aliyuncs.com' 信息,不影响使用。用户也可自行修改相关配置: eg:
1 |
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo |
相关链接 下载地址: https://mirrors.aliyun.com/centos/ https://mirrors.aliyun.com/centos-vault/ 官方主页: http://www.centos.org/ 邮件列表: http://www.centos.org/modules/tinycontent/index.php?id=16 论坛: http://www.centos.org/modules/newbb/ 文档: http://www.centos.org/docs/ Wiki: http://wiki.centos.org/ from:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11VQZfmr
View Details今天负责部署一个小项目,眼看到最后一步跑服务的时候报错了: Process: 2451 ExecStart=/home/.virtualenvs/bin/python /home/xxx.py (code=exited, status=217/USER) 仔细一看原来原来service文件的用户名没改,难怪提示217/USER错误呢,把用户名改对就好了,服务顺利跑起来了 [Unit] Description=xxx After=network.target [Service] WorkingDirectory=/home/deploy/server User=xxx ExecStart=/home/.virtualenvs/bin/python /home/deploy/server/xxx.py Restart=on-failure [Install] WantedBy=multi-user.target ———————————————— 版权声明:本文为CSDN博主「wangjinyu124419」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/u011519550/java/article/details/83588218
View Details查看防火墙状态: systemctl status firewalld.service 如图 绿的running表示防火墙开启 执行关闭命令: systemctl stop firewalld.service 再次执行查看防火墙命令:systemctl status firewalld.service 如下图所示表示防火墙已经关闭 执行开机禁用防火墙自启命令 : systemctl disable firewalld.service 完成 ============================================================ 关于防火墙的其他命令: 启动:systemctl start firewalld.service 防火墙随系统开启启动 : systemctl enable firewalld.service from:https://blog.csdn.net/ViJayThresh/article/details/81284007
View Details我们一般想到测试连通性时第一考虑到的就是使用ping命令。 但是我们知道ping命令使用的是icmp协议,属于tcp/ip协议中的一个子协议,所以我们可以用ping命令来测试tcp的连通性还可以测试延迟情况。tcp相关协议了解可以参考:TCP/IP四层模型讲解【笔记整理通俗易懂版】 但是当我们需要测试udp连接的时候ping命令显然没有任何作用。 这时候我们可以用到netcat,这个命令被誉为是网络中的“瑞士军刀”,功能非常强大,测试udp只是其中的一个功能变通。 在安全领域nc常用来端口监听转发,用的比较多的也是windows版的NC,在运维中需要常用到linux上的nc,而一般linux会默认集成这个命令,根据不同系统命令不同,有的为“nc”,有的为“netcat”,大家可以根据实际系统尝试下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
netcat 命令一览 [v1.10] connect to somewhere: netcat [-options] hostname port[s] [ports] … listen for inbound: netcat -l -p port [-options] [hostname] [port] options: -g gateway source-routing hop point[s], up to 8 -G num source-routing pointer: 4, 8, 12, … -h this cruft -i secs delay interval for lines sent, ports scanned -l listen mode, for inbound connects -n numeric-only IP addresses, no DNS -o file hex dump of traffic -p port local port number -r randomize local and remote ports -s addr local source address -t answer TELNET negotiation -u UDP mode -v verbose [use twice to be more verbose] -w secs timeout for connects and final net reads -z zero-I/O mode [used for scanning] port numbers can be individual or ranges: lo-hi [inclusive] 基本格式:nc [-options] hostname port[s] [ports] … nc -l -p port [options] [hostname] [port] -d 后台模式 -e prog 程序重定向,一旦连接,就执行 [危险!!] -g gateway source-routing hop point[s], up to 8 -G num source-routing pointer: 4, 8, 12, … -h 帮助信息 -i secs 延时的间隔 -l 监听模式,用于入站连接 -L 连接关闭后,仍然继续监听 -n 指定数字的IP地址,不能用hostname -o file 记录16进制的传输 -p port 本地端口号 -r 随机本地及远程端口 -s addr 本地源地址 -t 使用TELNET交互方式 -u UDP模式 -v 详细输出–用两个-v可得到更详细的内容 -w secs timeout的时间 -z 将输入输出关掉–用于扫描时 端口的表示方法可写为M-N的范围格式。 |
测试udp连接方法 a机器上运行: nc -ul 1080 或:netcat -ul -p 1080 #使用udp模式监听1080 端口 b机器上运行: nc -u x.x.x.x 1080 或:netcat -u x.x.x.x 1080 #使用udp模式向该ip的1080端口发送信息。 效果如图,在任意一边输入内容,另一边则会收到相应内容,以此就可以测试该端口的udp连接是否通常。 from:http://www.vuln.cn/2922
View Details备份源yum源 如果是国内下载的CentOS很可能国内YUM源已经设置好了。 备份/etc/yum.repos.d/下的*.repo文件。 在CentOS中配置使用网易和阿里的开源镜像 wget http://mirrors.aliyun.com/repo/Centos-7.repo wget http://mirrors.163.com/.help/CentOS7-Base-163.repo 或者手动下载repo文件并上传到/etc/yum.repos.d/目录 清除系统yum缓存并生成新的yum缓存 yum clean all # 清除系统所有的yum缓存 yum makecache # 生成yum缓存 安装epel源 yum list | grep epel-release yum install -y epel-release 再次清除系统yum缓存,并重新生成新的yum缓存 yum clean all yum makecache 查看系统可用的yum源和所有的yum源 yum repolist enabled yum repolist all 测试安装 yum install openssh-server from:cnblogs.com/cerana/p/11179728.html
View Details一、编译发布Asp.net core 应用 直接使用vs2019编译发布后,通过ftp上传到centos的 /www/ 目录下,不再赘述。 二、centos安装asp.net core runtime和nginx 1、安装asp.net core runtime# Copy
1 2 3 4 5 6 |
#注册 Microsoft 密钥。注册产品存储库。安装必需的依赖项。 sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm #安装 .NET Core 运行时 sudo yum install aspnetcore-runtime-3.1 |
2、安装nginx# 添加源:#
1 |
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm |
安装 nginx# Copy
1 |
$ sudo yum -y install nginx |
Nginx常用命令# Copy
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# 卸载 nginx $ sudo yum remove nginx # 设置开机启动 $ sudo systemctl enable nginx # 启动 nginx 服务 $ sudo service nginx start # 停止 nginx 服务 $ sudo service nginx stop # 重启 nginx 服务 $ sudo service nginx restart # 重新加载配置,一般是在修改过 nginx 配置文件时使用。 $ sudo service nginx reload #查看nginx版本 $ nginx -v |
3、使用nginx反向代理# 在 /etc/nginx/ 目录下新建AspnetCoreDemo.conf,内容如下 Copy
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
server { listen 80; server_name example.com; location / { proxy_pass http://localhost:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } |
4、重新加载nginx配置#
1 2 3 4 |
# 验证配置文件的语法 $ sudo nginx -t # 强制 Nginx 选取更改。 $ sudo nginx -s reload |
三、添加Systemd守护 1、Systemd service内容如下# 路径 /etc/systemd/system/AspnetCoreDemo.service 新建文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
[Unit] Description=AspnetCoreDemo running on Centos [Service] WorkingDirectory=/www ExecStart=/usr/bin/dotnet /www/AspnetCoreDemo.dll Restart=always # Restart service after 10 seconds if the dotnet service crashes: RestartSec=10 KillSignal=SIGINT SyslogIdentifier=AspnetCoreDemo #User=www-data #Production:生产环境 Development:开发环境 Environment=ASPNETCORE_ENVIRONMENT=Development Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install] WantedBy=multi-user.target |
2、Systemd基本操作命令#
1 2 3 4 5 6 7 8 9 10 |
#启用 systemctl enable AspnetCoreDemo.service #启动 systemctl start AspnetCoreDemo.service #状态 systemctl status AspnetCoreDemo.service #重启 systemctl restart AspnetCoreDemo.service #关闭 systemctl stop AspnetCoreDemo.service |
四、防火墙设置(不需要端口访问,可忽略此步)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
1、开放端口 firewall-cmd --zone=public --add-port=5000/tcp --permanent # 开放5000端口 firewall-cmd --zone=public --remove-port=5000/tcp --permanent #关闭5000端口 firewall-cmd --reload # 配置立即生效 2、查看防火墙所有开放的端口 firewall-cmd --zone=public --list-ports 3.、关闭防火墙 如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估 systemctl stop firewalld.service 4、查看防火墙状态 firewall-cmd --state |
from:https://www.cnblogs.com/wxb8/p/12359521.html
View Details开启防火墙服务 以前为了方便,把防火墙都关闭了,因为现在项目都比较重要,害怕受到攻击,所以为了安全性,现在需要将防火墙开启,接下来介绍一下步骤。 1, 首先查看防火墙状态:
1 |
firewall-cmd --state |
下图所示为关闭防火墙,接下来需要开启 2, 开启防火墙, 启动firewall:
1 |
systemctl start firewalld.service |
设置开机自启:
1 |
systemctl enable firewalld.service |
3, 重启防火墙:
1 |
systemctl restart firewalld.service |
4, 检查防火墙状态是否打开:
1 |
firewall-cmd --state |
如图显示已经打开 5, 查看防火墙设置开机自启是否成功:
1 |
systemctl is-enabled firewalld.service;echo $? |
如图所示,即为成功 以上就是开启防火墙相关步骤 开启特定端口 在开启防火墙之后,我们有些服务就会访问不到,是因为服务的相关端口没有打开。 在此以打开80端口为例 命令:
1 2 3 4 5 6 7 8 9 10 |
开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent 重启防火墙:systemctl restart firewalld.service 命令含义: --zone #作用域 --add-port=80/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效 |
如图,可看到开启端口成功: 如果不放心,可以通过命令:
1 2 |
netstat -ntlp 或:firewall-cmd --list-ports |
查看开启的所有端口,具体如图 from:https://blog.csdn.net/zll_0405/article/details/81208606
View Details1、安装PPTP
1 |
yum install pptpd ppp |
2、配置文件
1 2 |
#修改dns信息 vim /etc/ppp/options.pptpd |
将它更改为你的dns服务地址(此处为百度和谷歌的dns)
1 2 |
ms-dns 180.76.76.76 ms-dns 8.8.8.8 |
3、vpn 账户密码
1 |
vim /etc/ppp/chap-secrets |
设置 VPN账号 + 服务类型 + VPN密码 + IP
1 2 3 4 |
# Secrets for authentication using CHAP # client server secret IP addresses 123 pptpd 012345 * 456 * 123456 * |
账户123密码012345 4、设置最大传输单元
1 2 |
vim /etc/ppp/ip-up 在命令符 [ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local “$@” 后面添加 ifconfig ppp0 mtu 1472 |
5、配置pptp配置文件
1 2 3 4 5 |
vim /etc/pptpd.conf localip 192.168.0.1 remoteip 192.168.1.100-110 localip ---本机ip地址 remoteip ---分配给客户端的地址,一般是内网网段地址 |
6、打开内核的ip 转发功能
1 2 3 |
vim /etc/sysctl.conf 编辑配置文件,添加 net.ipv4.ip_forward = 1 的配置,保存后退出。 运行 sysctl -p 使修改后的参数生效。 |
7、设置开机启动
1 2 3 4 5 |
#重启PPTP服务 systemctl restart pptpd #配置开机自启 systemctl enable pptpd.service |
8、打开防火墙
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
开启47及1723端口: firewall-cmd --zone=public --add-port=47/tcp --permanent firewall-cmd --zone=public --add-port=1723/tcp --permanent 允许防火墙伪装IP: firewall-cmd --zone=public --add-masquerade 允许gre协议: firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p gre -j ACCEPT 设置规则允许数据包由eth0和ppp+接口中进出 firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i ppp+ -o eth0 -j ACCEPT firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i eth0 -o ppp+ -j ACCEPT 设置转发规则,从源地址发出的所有包都进行伪装,改变地址,由eth0发出:(192.168.0.0内网地址,子网地址前两位) firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o eth0 -j MASQUERADE -s 192.168.0.0/24 重启服务器: firewall-cmd --reload systemctl restart pptpd |
9、日志
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
1、上线日志 vim /etc/ppp/ip-up 在[ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@" 后加上 echo "$PEERNAME 分配IP: $5 登录IP: $6 登录时间: `date -d today +%F_%T`" >> /var/log/pptpd.log 2、下线日志 vim /etc/ppp/ip-down 在/etc/sysconfig/network-scripts/ifdown-post --realdevice ${REALDEVICE} \ ifcfg-${LOGDEVICE} 后加上 echo "$PEERNAME 下线IP: $6 下线时间: `date -d today +%F_%T`" >> /var/log/pptpd.log |
from:https://blog.csdn.net/h18733517027/article/details/94435182
View Details问题描述: Details -Event filter with query "SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA "Win32_Processor" AND TargetInstance.LoadPercentage > 99" could not be reactivated in namespace "//./root/CIMV2" because of error 0x80041003. Events cannot be delivered through this filter until the problem is corrected. 解决方案: http://go.microsoft.com/?linkid=9775756 http://download.microsoft.com/download/3/9/D/39DF4B56-9D3A-4645-AC11-803043ED4214/MicrosoftFixit50688.msi 方案详解: http://support.microsoft.com/kb/2545227/en-us#FixItForMeAlways from:https://www.cnblogs.com/heweijian/p/6781382.html
View Details