aliyun centos ngnix[1] + docker[3] + dotnet core
开通阿里云ECS
开通了一个阿里云的ECS ,预装centos;
Xshell 远程shh登录
下载:https://www.newasp.net/soft/384562.html
挂载数据盘(阿里云盘&不分区)
fdisk -l 查看已挂载的云盘名称 mkfs.ext4 /dev/vdb 为/dev/vdb数据盘创建ext4文件系统 非新购的云盘,应该不用执行这一句 mkdir /data 创建挂载点 mount /dev/vdb /data 将云盘挂载至挂载点 df -h 显示云盘对应的挂载点信息,表示挂载成功。
Linux目录结构
系统目录: /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。 /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。 /dev:dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。 /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。 /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 /media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。 /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。 /proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序 /selinux:这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 /srv:该目录存放一些服务启动之后需要提取的数据。 /sys:系统 /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。 /root:该目录为系统管理员,也称作超级权限者的用户主目录。 /home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 /opt:这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 /usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。 /usr/bin:系统用户使用的应用程序。 /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。 /usr/src:内核源代码默认的放置目录。 /tmp:这个目录是用来存放一些临时文件的。 /var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 /data:上一步挂载的数据盘
Linux常用命令
lsb_release -a 查看系统环境 fdisk -l 查看磁盘信息 /dev/vda: 系统盘 /dev/vdb: 数据盘 df -h 显示目前在Linux系统上的文件系统的磁盘使用情况统计。 cd .. 上层目录 cd ~ 当前用户目录 如 root ls -a 显示所有文件及目录 rpm 用于管理套件 https://www.runoob.com/linux/linux-comm-rpm.html yum √ 包管理器 https://www.runoob.com/linux/linux-yum.html
wget
sed 利用脚本来处理文本文件。 https://www.runoob.com/linux/linux-comm-sed.html
rm -rf ****** 删除(不确认)
CentOS安装Nginx
添加源:sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
安装:sudo yum install -y nginx
版本:install -v
目录:/etc/nginx
配置文件:/etc/nginx/conf.d/default.conf
启动:sudo systemctl start nginx.service
开机自动运行:sudo systemctl enable nginx.service
#创建 Nginx 运行使用的用户 www
# /usr/sbin/groupadd www
# /usr/sbin/useradd -g www www
修改配置文件: 参考:https://www.runoob.com/linux/nginx-install-setup.html
如果您正在运行防火墙,请运行以下命令以允许 HTTP 和 HTTPS 通信
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
参考:https://www.cnblogs.com/songxingzhu/p/8568432.html
参考:https://www.cnblogs.com/esofar/p/8043792.html
CentOS 安装dotnet core sdk & 部署运行dotnet core 示例项目
添加源:sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
安装sdk和运行时:(仅部署环境,安装运行时就可以)
sudo yum update # 安裝SDK sudo yum install dotnet-sdk-2.2 # 运行时,安装SDK的时候,会同时安装runtime sudo yum install aspnetcore-runtime-2.2
新建/运行一个webapi示例项目
cd 某个目录 dotnet new webapi -n helloCore cd helloCore dotnet run
5000/5001端口被占用: https://blog.csdn.net/qq_23921141/article/details/85988958
参考:https://www.cnblogs.com/wyt007/p/8040715.html
参考:https://www.cnblogs.com/esofar/p/8043792.html
参考:https://www.cnblogs.com/ants/p/5732337.html
安装docker
docker相关参考这一篇就够了:https://www.cnblogs.com/clsn/p/8410309.html
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo sed -i 's#download.docker.com#mirrors.ustc.edu.cn/docker-ce#g' /etc/yum.repos.d/docker-ce.repo yum install docker-ce -y
# 修改启动文件,监听远程端口(暴露2375端口有风险,需要配置安全策略)
vim /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://10.6.66.228:2375 systemctl daemon-reload systemctl enable docker.service systemctl restart docker.service
使用aliyun源提升Docker构建速度
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://rrn1rf2c.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
Docker仓库
方式1:使用阿里云容器仓库:https://www.aliyun.com/product/acr
方式2:自建docker仓库
0.mkdir -p /data/registry-var/auth/ 1.docker run --entrypoint htpasswd registry:2.4.1 -Bbn 用户名 密码 >> /data/registry-var/auth/htpasswd 2.docker run -d -p 你想要映射的端口号:5000 --restart=always -v /data/registry-var/auth/:/auth/ -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd -v /data/registry-var/:/var/lib/registry/ registry:2.4.1 3.http://ip:port/v2/_catalog 就能看到内容
参考:https://www.cnblogs.com/yyxianren/p/10870494.html
代码托管:
使用阿里云git代码托管:https://promotion.aliyun.com/ntms/act/code.html
AspNetCore 镜像的选择与拉取
1.使用命令拉取镜像: docker pull microsoft/dotnet:2.1-sdk
2.使用Dockerfile 文件拉取
参考:https://www.cnblogs.com/szlblog/p/9871400.html
持续交付:
使用阿里云云效:rdc.aliyun.com

浙公网安备 33010602011771号