Linux服务器环境搭建

1.Java环境

  1. 下载java安装包

    1
    wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
  2. 解压

    1
    tar -zxvf jdk-17_linux-aarch64_bin.tar.gz
  3. 环境变量

    1
    2
    3
    4
    5
    6
    7
    vi jdk17.sh
    # 粘贴以下命令并保存
    export JAVA_HOME=/tools/jdks/jdk-17.0.1
    export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
    export PATH=$PATH:$JAVA_HOME/bin

    cp jdk17.sh /etc/profile.d

2.Maven

  1. 下载maven安装包

    1
    wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz
  2. 解压

    1
    tar -zxvf apache-maven-3.8.6-bin.tar.gz
  3. 环境配置

    1
    2
    3
    4
    vi mvn.sh

    export MAVEN_HOME=/tools/apache-maven
    export PATH=$PATH:$MAVEN_HOME/bin
  4. 让配置生效

    1
    cp mvn.sh /etc/profile.d/

3.Redis

  1. redis官网 下载6.2.6

    1
    wget https://download.redis.io/releases/redis-6.2.6.tar.gz
  2. 安装 gcc 编译器 (ubuntu一般自带不需安装)

    1
    2
    3
    4
    apt install gcc

    # 测试gcc环境
    gcc --version
  3. redis解压缩到 安装位置

    1
    tar -zxvf redis-6.2.6.tar.gz /tools/redis
  4. 编译

    1
    2
    3
    cd /tools/redis/redis-6.2.6

    make
  5. 如果没有安装好c语言编译环境,make会报错 –Jemalloc/jemalloc.h:没有那个文件

    解决:运行

    1
    make distclean

    在redis-6.2.6目录下再次执行make命令

  6. 可以跳过 make test 执行 make install 安装到 /usr/local/bin

  7. 安装目录 /use/local/bin

    默认安装目录说明
    redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲
    redis-check-dump:修复有问题的dump.rdb文件
    redis-sentinel : Redis集群使用
    redis-server : Redis服务器启动命令,redis-cli :客户端,操作入口

  8. 启动

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    # 前台启动
    redis-server

    # 后台启动
    vi /tools/redis/redis-6.2.6/redis.conf
    # 找到daemonize将no改为yes
    # 保存并退出
    # 启动
    redis-server /opt/tools/redis/redis-6.2.6/redis.conf
    # 查看启动情况
    ps -ef | grep redis

    # ps可省略
    # 使用客户端连接redis
    redis-cli
    # 使用ping命令测试会出现PONG表示成功
    ping
  9. 关闭redis服务

    1. 直接关闭

      1
      redis-cli shutdown
    2. 找到进程,杀死进程

      1
      2
      ps -ef | grep redis
      kill 进程号
    3. 多实例关闭

      1
      redis-cli -p 6379 shutdown

4.Nginx

  1. 安装准备文件

    1
    sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring

    如果安装出错,可以尝试更新一下apt-get 具体问题具体分析

    1
    sudo apt-get -y update
  2. 导入官方 Nginx 签名密钥,以便 apt 可以验证包的真实性。获取密钥:

    1
    curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
  3. 验证下载的文件是否包含正确的密钥:

    1
    gpg --dry-run --quiet --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg

    输出完整密钥

    1
    2
    3
    pub   rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
    573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62
    uid nginx signing key <signing-key@nginx.com>

    如果签名不一致,请删除该文件。

  4. 在apt仓库设置稳定的Nginx版本

    1
    2
    3
    echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
    http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

    如果需要使用最新版的Nginx,运行以下命令

    1
    2
    3
    echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
    http://nginx.org/packages/mainline/ubuntu `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list
  5. 将我们的包设置为仓库首选

    1
    2
    echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
    | sudo tee /etc/apt/preferences.d/99nginx
  6. 安装Nginx

    1
    2
    sudo apt update
    sudo apt install nginx

5.Docker安装:

1. Ubuntu

  1. 卸载旧版docker

    旧版本的 Docker 被称为docker,docker.io或docker-engine. 如果安装了这些,请卸载

    1
    sudo apt-get remove docker docker-engine docker.io containerd runc

    apt-get如果报告没有安装这些软件包,那也没关系。

  2. 设置存储库

    1. 更新apt包索引并安装包以允许apt通过 HTTPS 使用存储库:

      1
      2
      3
      4
      5
      6
      sudo apt-get update
      sudo apt-get install \
      ca-certificates \
      curl \
      gnupg \
      lsb-release
    2. 添加 Docker 的官方 GPG 密钥:

      1
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    3. 使用以下命令设置稳定存储库。要添加 nightly或test存储库,请在以下命令中的单词之后添加单词nightly或test(或两者) 。了解夜间和测试频道。stable

      1
      2
      3
      echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  3. 安装 Docker 引擎

    1. 更新apt包索引,安装最新版本的Docker Engine和containerd,或者进入下一步安装特定版本:

      1
      2
      sudo apt-get update
      sudo apt-get install docker-ce docker-ce-cli containerd.io
    2. 要安装特定版本的 Docker Engine,请在 repo 中列出可用版本,然后选择并安装:(手动选择版本)一种。列出您的存储库中可用的版本:

      1
      2
      3
      4
      5
      6
      apt-cache madison docker-ce

      docker-ce | 5:18.09.1~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
      docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
      docker-ce | 18.06.1~ce~3-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
      docker-ce | 18.06.0~ce~3-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages

      使用第二列中的版本字符串安装特定版本,例如5:18.09.1~3-0~ubuntu-xenial``hello-world 通过运行映像来验证 Docker 引擎是否已正确安装。

      1
      sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
    3. hello-world 通过运行映像来验证 Docker 引擎是否已正确安装。

      1
      sudo docker run hello-world
  4. 从包安装

    1. 转到https://download.docker.com/linux/ubuntu/dists/,选择您的 Ubuntu 版本,然后浏览到pool/stable/、选择amd64、 armhf、arm64或s390x,然后下载.deb您要安装的 Docker 引擎版本的文件。

    2. 安装 Docker Engine,将下面的路径更改为您下载 Docker 包的路径。

      1
      $ sudo dpkg -i /path/to/package.deb

      Docker 守护进程自动启动。

    3. hello-world 通过运行映像来验证 Docker 引擎是否已正确安装。

      1
      $ sudo docker run hello-world

      此命令下载测试映像并在容器中运行它。当容器运行时,它会打印一条消息并退出。

  5. 升级 Docker 引擎

    1
    sudo apt-get update
  6. 卸载 Docker 引擎 🔗

    1. 卸载 Docker 引擎、CLI 和 Containerd 软件包:

      1
      sudo apt-get purge docker-ce docker-ce-cli containerd.io
    2. 主机上的映像、容器、卷或自定义配置文件不会自动删除。要删除所有映像、容器和卷:

      1
      2
      $ sudo rm -rf /var/lib/docker
      $ sudo rm -rf /var/lib/containerd
  7. 将 Docker 配置为开机启动 🔗

    1
    2
    sudo systemctl enable docker.service
    sudo systemctl enable containerd.service

    要禁用此行为,请disable改用。

    1
    2
    sudo systemctl disable docker.service
    sudo systemctl disable containerd.service

2. 安装 docker compose

  1. 最简便的安装方式

    1
    pip install docker-compose

    安装成功一下步骤均可省了

  2. 运行以下命令下载 Docker Compose 的当前稳定版本:

    1
    2
    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

    要安装不同版本的 Compose,请替换1.29.2 为您要使用的 Compose 版本。有关如何在 Linux 上安装 Compose2.2.3的说明,请参阅在 Linux上安装 Compose 2.0.0

    如果在使用 安装时遇到问题curl,请参阅替代安装选项选项卡。

  3. 如果安装后命令docker-compose失败,请检查您的路径。您还可以/usr/bin在路径中创建指向或任何其他目录的符号链接。

    例如:

    1
    sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
  4. 测试安装。

    1
    docker-compose --version
  5. 升级🔗

    1
    docker-compose migrate-to-labels

    或者,如果不保留它们,可以删除。Compose 只是创建新的。

    1
    docker container rm -f -v myapp_web_1 myapp_db_1 ...
  6. 卸载

    如果您使用以下方式安装 Docker Compose,请卸载curl:

    1
    sudo rm /usr/local/bin/docker-compose

    如果您使用以下方式安装 Docker Compose,请卸载pip:

    1
    pip uninstall docker-compose

3. 配置邮件服务

  1. 配置软件源
    ubuntu18.04上无法直接安装heirloom-mailx,需要添加软件源

    1
    sudo vim  /etc/apt/sources.list

    末尾加上(注意,如果这个源不行,就尝试阿里,网易,华为,清华等源)

    1
    deb http://cz.archive.ubuntu.com/ubuntu xenial main universe
  2. 安装heirloom-mailx

    1
    2
    sudo apt-get update
    sudo apt install heirloom-mailx
  3. 配置外部SMTP
    提前在邮箱后台生成授权码和开启IMAP/SMTP服务,如若不知,请往下看

    1
    sudo vim /etc/s-nail.rc

    Ubuntu18.04的配置文件为/etc/s-nail.rc,把下面几行放置在最后

    1
    2
    3
    4
    5
    set from=xxxxxxx@qq.com
    set smtp=smtp.qq.com
    set smtp-auth-user=xxxxxx@qq.com
    set smtp-auth-password=xxxxxxxx
    set smtp-auth=ubuntu邮件提醒

    注意:第四行smtp-auth-password是指的QQ邮箱授权码(或其他邮箱授权码),不是真正的邮箱密码
    这里可配置公共邮箱、个人邮箱等,视实际情况而定。

  4. 测试

    1
    echo "邮件内容" | s-nail  -s "邮件主题" yuyawei@y.com

6.Mysql

1.
2. MySQL8 卸载

  1. 查看MySQL依赖 : dpkg --list|grep mysql
  2. 卸载: sudo apt-get remove mysql-common
  3. 卸载: sudo apt-get autoremove --purge mysql-server-8.0(这里版本对应即可)
  4. 清除残留数据: dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P
  5. 再次查看MySQL的剩余依赖项: dpkg --list|grep mysql(这里一般就没有输出了,如果有执行下一步)
  6. 继续删除剩余依赖项,如:sudo apt-get autoremove --purge mysql-apt-config