• 【环境搭建】开发和办公环境搭建全记录 持续更新


    前言

    记录开发和办公环境搭建,持续更新。

    开发环境

    Java 环境


    Python 环境


    C/C++ 环境


    Node.js 环境


    虚拟机环境

    安装 VirtualBox

    下载地址


    安装 Vagrant

    Vagrant 可以帮助我们快速创建出一个虚拟机,可以在 Vagrant Boxes 查看镜像。

    安装完 Vagrant 后,使用 vagrant init centos/7,初始化一个 CentOS7 系统,值得注意的是,这个命令在那个路径下执行,生成的 Vagrantfile 就在这个路径。

    使用 vagrant up 启动虚拟机环境,启动后出现 default folder:… =>/vagrant,表示启动成功,然后 ctrl+c 退出。使用 vagrant ssh 连上虚拟机,默认账户密码都是 vagrant,可以使用 exit 退出。

    如果安装太慢,可以在浏览器中下载相应的 CentOS-7-x86_64-Vagrant-2004_01.VirtualBox.box 文件,然后执行命令 vagrant box add -c -f centos/7 box_file_path 添加到本地 box。注意 add 后面的名字 centos/7 必须和 vagrant init 后面跟的名字一样。最后 vagrant up 启动虚拟机环境。

    不过她使用的网络方式是网络地址转换 NAT(端口转发),如果其他主机要访问虚拟机,必须要进行端口映射,这样太过麻烦。可以给虚拟机一个固定的 ip 地址,Windows 和虚拟机可以互相 ping 通。具体操作是:打开 Vagrantfile 更改虚拟机ip,修改其中的config.vm.network "private_network",ip:"192.168.56.56"


    安装 Docker

    在 CentOS7 系统安装 Docker,具体步骤为:

    # root
    su
    
    # 卸载系统之前的 docker 
    yum remove docker docker-client docker-client-latest docker-common docker-latest-logrotate docker-logrotate docker-engine
                      
    # 安装软件包
    yum install -y yum-utils
    
    # 设置存储库
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
    # 安装 docker 引擎
    yum install docker-ce docker-ce-cli containerd.io
    
    # 启动 docker
    systemctl start docker
    
    # 设置开机自启动
    systemctl enable docker
    
    # 检查是否安装成功
    docker -v
    
    # 配置阿里云镜像加速,参考 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
    mkdir -p /etc/docker
    
    tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://wh1acsne.mirror.aliyuncs.com"]
    }
    EOF
    
    systemctl daemon-reload
    systemctl restart docker
    
    # 创建文件夹保存 Docker 所有镜像数据
    cd /
    mkdir docker
    
    

    在 Docker 中安装 MySQL,具体步骤为:

    # 安装镜像
    docker pull mysql:5.7.32
    
    # 创建并编辑 MySQL 配置
    touch /docker/mysql5.7.32/conf/my.conf
    vi /docker/mysql5.7.32/conf/my.conf
    # 初始配置为
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    [mysqld]
    init_connect='SET collation_connection = utf8_unicode_ci'
    init_connect='SET NAMES utf8'
    character-set-server=utf8
    collation-server=utf8_unicode_ci
    skip-character-set-client-handshake
    skip-name-resolve
    
    # 启动 MySQL
    # --name 指定容器名字 -v 目录挂载 -p 指定端口映射  -e 设置mysql参数 -d 后台运行
    sudo docker run -p 3306:3306 --name mysql5.7.32.3306 -v /docker/mysql5.7.32/log:/var/log/mysql -v /docker/mysql5.7.32/data:/var/lib/mysql -v /docker/mysql5.7.32/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.32
    
    # 查看运行情况
    docker ps -a
    
    # 设置 MySQL 自启动
    docker update mysql5.7.32.3306 --restart=always
    
    # 进入 MySQL
    docker exec -it mysql5.7.32.3306 /bin/bash
    
    

    在 Docker 中安装 Redis,具体步骤为:

    # 安装镜像
    docker pull redis:3.0.7
    docker pull redis:6.0.9
    
    # 创建并编辑 Redis 配置
    touch /docker/redis3.0.7/redis.conf
    vi /docker/redis3.0.7/redis.conf
    # 初始配置为
    appendonly yes
    port 6379
    # 创建多个 Redis 配置文件,并更改多个配置的端口,方便后面使用
    cd /docker/redis3.0.7
    cp redis.conf /redis6379/redis.conf /redis6380/redis.conf /redis6381/redis.conf
    
    # 启动多个 Redis
    docker run -p 6379:6379 --name redis3.0.7.6379 -v /docker/redis3.0.7/redis6379/data:/redis6379/data -v /docker/redis3.0.7/redis6379/redis.conf:/etc/redis6379/redis.conf -d redis:3.0.7 [redis-server /etc/redis6379/redis.conf]
    
    docker run -p 6380:6380 --name redis3.0.7.6380 -v /docker/redis3.0.7/redis6380/data:/redis6380/data -v /docker/redis3.0.7/redis6380/redis.conf:/etc/redis6380/redis.conf -d redis:3.0.7 [redis-server /etc/redis6380/redis.conf]
    
    docker run -p 6381:6381 --name redis3.0.7.6381 -v /docker/redis3.0.7/redis6381/data:/redis6381/data -v /docker/redis3.0.7/redis6381/redis.conf:/etc/redis6381/redis.conf -d redis:3.0.7 [redis-server /etc/redis6381/redis.conf]
    
    # 查看运行情况
    docker ps -a
    
    # 设置 Redis 自启动
    docker update redis3.0.7.6379 --restart=always
    docker update redis3.0.7.6380 --restart=always
    docker update redis3.0.7.6381 --restart=always
    
    # 进入 Redis
    docker exec -it redis3.0.7.6379 /bin/bash [redis-cli]
    docker exec -it redis3.0.7.6380 /bin/bash [redis-cli]
    docker exec -it redis3.0.7.6381 /bin/bash [redis-cli]
    
    

    在 Docker 中安装 Elasticsearch,具体步骤为:

    # 下载安装 elasticsearch(存储和检索)和 kibana(可视化检索)
    docker pull elasticsearch:7.8.0
    docker pull kibana:7.8.0
    
    # 将 docker 里的目录挂载到 linux 的 /docker 目录中
    # 修改 /docker 就可以改掉 docker 里的
    mkdir -p /docker/elasticsearch7.8.0/config
    mkdir -p /docker/elasticsearch7.8.0/data
    mkdir -p /docker/elasticsearch7.8.0/plugins
    
    # 让 es 可以被远程任何机器访问
    echo "http.host: 0.0.0.0" >> /docker/elasticsearch7.8.0/config/elasticsearch.yml
    
    # 修改文件权限
    chmod -R 777 /docker/elasticsearch7.8.0/
    
    # 查看可用内存
    [root@10 /]# free -m
    
    # 9200 是用户交互端口,9300 是集群心跳端口
    # 第一个 -e,指定是单阶段运行
    # 第二个 -e,指定占用的内存大小,生产时可以设置 32G
    # 考虑到虚拟机情况,设置内存不超过 512m
    docker run --name elasticsearch7.8.0 -p 9200:9200 -p 9300:9300 
    -e "discovery.type=single-node" 
    -e ES_JAVA_OPTS="-Xms64m -Xmx512m" 
    -v /docker/elasticsearch7.8.0/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 
    -v /docker/elasticsearch7.8.0/data:/usr/share/elasticsearch/data 
    -v /docker/elasticsearch7.8.0/plugins:/usr/share/elasticsearch/plugins 
    -d elasticsearch:7.8.0
    
    # 设置开机启动
    docker update elasticsearch7.8.0 --restart=always
    
    # 访问 http://192.168.56.56:9200/
    返回 elasticsearch 版本信息
    
    # 访问 http://192.168.56.56:9200/_cat/nodes
    返回 elasticsearch 节点信息
    
    # kibana 指定了 ES 交互端口 9200
    # 5601 为 kibana 主页端口
    docker run --name kibana7.8.0 -e ELASTICSEARCH_HOSTS=http://192.168.56.56:9200 -p 5601:5601 -d kibana:7.8.0
    
    # 设置开机启动
    docker update kibana7.8.0 --restart=always
    
    # 访问 http://192.168.56.56:5601
    返回可视化界面
    

    在 Docker 中安装 elasticsearch-analysis-ik,具体步骤为:

    # 由于使用 Docker 安装 ES 时,进行了路径映射,所以直接进入 ES 的 plugins 目录
    cd docker/elasticsearch7.8.0/plugins
    # 安装 waget
    yum install wget
    # 安装 unzip
    yum install unzip
    # 下载 ik 压缩包,如果下载显示 Unable to establish SSL connection. 可以在 wget 后面加上参数 --no-check-certificate
    wget [ --no-check-certificate] https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip
    # 解压 ik
    unzip elasticsearch-analysis-ik-7.8.0.zip -d ik
    # 更改权限
    chmod -R 777 ik
    # 删除 ik 压缩包
    rm -rf elasticsearch-analysis-ik-7.8.0.zip
    # 重启 ES
    docker restart elasticsearch7.8.0
    
    # 测试
    # 使用默认分词器
    GET _analyze
    {
       "text":"我是中国人"
    }
    # 输出
    {
      "tokens" : [
        {
          "token" : "我",
          "start_offset" : 0,
          "end_offset" : 1,
          "type" : "<IDEOGRAPHIC>",
          "position" : 0
        },
        {
          "token" : "是",
          "start_offset" : 1,
          "end_offset" : 2,
          "type" : "<IDEOGRAPHIC>",
          "position" : 1
        },
        {
          "token" : "中",
          "start_offset" : 2,
          "end_offset" : 3,
          "type" : "<IDEOGRAPHIC>",
          "position" : 2
        },
        {
          "token" : "国",
          "start_offset" : 3,
          "end_offset" : 4,
          "type" : "<IDEOGRAPHIC>",
          "position" : 3
        },
        {
          "token" : "人",
          "start_offset" : 4,
          "end_offset" : 5,
          "type" : "<IDEOGRAPHIC>",
          "position" : 4
        }
      ]
    }
    
    # 使用 ik
    GET _analyze
    {
      "analyzer": "ik_smart", 
       "text":"我是中国人"
    }
    # 输出
    {
      "tokens" : [
        {
          "token" : "我",
          "start_offset" : 0,
          "end_offset" : 1,
          "type" : "CN_CHAR",
          "position" : 0
        },
        {
          "token" : "是",
          "start_offset" : 1,
          "end_offset" : 2,
          "type" : "CN_CHAR",
          "position" : 1
        },
        {
          "token" : "中国人",
          "start_offset" : 2,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 2
        }
      ]
    }
    
    GET _analyze
    {
       "analyzer": "ik_max_word", 
       "text":"我是中国人"
    }
    # 输出
    {
      "tokens" : [
        {
          "token" : "我",
          "start_offset" : 0,
          "end_offset" : 1,
          "type" : "CN_CHAR",
          "position" : 0
        },
        {
          "token" : "是",
          "start_offset" : 1,
          "end_offset" : 2,
          "type" : "CN_CHAR",
          "position" : 1
        },
        {
          "token" : "中国人",
          "start_offset" : 2,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 2
        },
        {
          "token" : "中国",
          "start_offset" : 2,
          "end_offset" : 4,
          "type" : "CN_WORD",
          "position" : 3
        },
        {
          "token" : "国人",
          "start_offset" : 3,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 4
        }
      ]
    }
    

    在 Docker 中安装 Nginx,具体步骤为:

    
    

    Jetbrains 套件

    安装 IntelliJ IDEA

    安装 PyCharm

    安装 CLion

    安装 WebStorm

    办公环境

    其他环境

    总结

  • 相关阅读:
    线程
    ACM/OJ输入输出Tips
    Maven---pom.xml详解
    通过chrome分析知乎的登录过程学习cookie原理
    Javaweb日志系统
    SpingMVC+AJAX+jquery表单数据交互
    SpringMVC Controller 失效 404错误 IEDA
    【JavaSE】Properties类
    freemaker判断对象非空
    移植openssh时could not load host key: /etc/ssh/ssh_host_rsa_key 无法启动ssh的一个解决办法
  • 原文地址:https://www.cnblogs.com/parzulpan/p/14260911.html
Copyright © 2020-2023  润新知