Deploy in Ubuntu –dev
System Init
阿里云上的ECS
数据盘挂载【按需操作】
1 2 3 4 5 6 7
| $ sudo apt update $ sudo apt upgrade -y $ sudo apt autoremove $ sudo fdisk -l
$ sudo fdisk -u /dev/vdb
|
运行fdisk -lu /dev/vdb命令查看新分区。
如果出现/dev/vdb1的相关信息,表示新分区已创建完成。
sudo mkfs -t ext4 /dev/vdb1
创建文件系统
sudo cp /etc/fstab /etc/fstab.bak
备份etc/fstab
把分区写入启动/etc/fstab
,启动开机自动挂载分区
1 2 3
| sudo echo `blkid /dev/vdb1 | awk '{print $2}' | sed 's/\"//g'` /mnt ext4 defaults 0 0 >> /etc/fstab
|
运行sudo mount /dev/vdb1 /mnt
命令挂载文件系统。
如果运行df -h
命令后出现新建文件系统的信息,表示文件系统挂载成功。
Install docker & Config
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
|
$ sudo apt-get update
$ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
$ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.27.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose $ sudo chmod +x /usr/local/bin/docker-compose $ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose $ docker-compose --version
$ sudo service docker stop $ sudo mv /var/lib/docker /mnt/docker $ sudo ln -s /mnt/docker /var/lib/ $ sudo service docker start
$ sudo mkdir -p /etc/docker $ sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://u9bgtozi.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
|
安装nginx以及配置
nginx安装
sudo apt install nginx
证书申请以及安装
1 2 3 4 5
| sudo add-apt-repository universe sudo apt-get update sudo apt-get install certbot python3-certbot-nginx
certbot --nginx --domains sudomain.***.com
|
更新nginx配置
覆盖上传nginx
文件夹的文件到/etc/nginx
1 2 3 4 5
| sudo rm /etc/nginx/sites-available/default sudo rm /etc/nginx/sites-enabled/default
sudo ln -s /etc/nginx/sites-available/sudomain.***.com.conf /etc/nginx/sites-enabled/sudomain.***.com.conf sudo service nginx restart
|
【可选操作】加密网站访问,使用用户名密码
1 2
| sudo apt-get install apache2-utils sudo htpasswd -c /etc/nginx/.htpasswd Javen
|
修改对应server的配置节
1 2 3 4 5 6
| location / { auth_basic "Restricted"; auth_basic_user_file /etc/nginx/.htpasswd; vhost_traffic_status_display; vhost_traffic_status_display_format html; }
|
增强安全配置【仅在未使用certbot时使用】
生成 dhparam.pem 文件, 在命令行执行任一方法:
方法1: 很慢
openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
方法2: 较快
与方法1无明显区别. 2048位也足够用, 4096更强
openssl dhparam -dsaparam -out /etc/nginx/ssl/dhparam.pem 4096
更新说明
2021-10-16日更新,
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.27.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
自从v2.0,版本号前面需要加v,如https://github.com/docker/compose/releases/download/v2.0.1/docker-compose-$(uname -s)-$(uname -m)