云计算底子

打印 上一主题 下一主题

主题 1963|帖子 1963|积分 5889


  • 情况准备

    • 配置虚拟机
    • 安装docker

      • 条件
      • 安装

        • 步骤
        • 命令
        • 效果图


    • 安装docker-compose

      • 条件
      • 安装

        • 步骤
        • 效果图


    • 安装gitea

      • 步骤
      • 命令
      • 效果图

        • 实行docker-compose命令
        • 浏览器初始gitea配置
        • 浏览器登录gitea
        • 创建构造
        • 创建堆栈



  • Drone安装

    • 步骤
    • 效果图

  • 非主动化部署

    • nginx安装
    • redis安装
    • jdk安装

  • 主动化部署

    • tmocat安装
    • nginx

情况准备

配置虚拟机




安装docker

条件


  • 确保系统内核版本在3.10以上
  • 确保系统已经安装了docker
离线安装

准备安装包 docker-18.06.1-ce.tgz
下载所在https://download.docker.com/linux/static/stable/x86_64/
“本项目必要安装 docker,建议利用 docker-18.06.1-ce.tgz 版本,你可以从 docker 官方网站获取安装包。”


  • tar -zxvf docker-18.06.1-ce.tgz 解压安装包
  • cp docker/* /usr/bin/ 将解压出来的docker文件复制到 /usr/bin/ 目录下
  • vi /etc/systemd/system/docker.service 新增docker.service文件,复制进docker配置文件,这样可以将docker注册为service服务
docker配置文件如下:
  1. [Unit]
  2. Description=Docker Application Container Engine
  3. Documentation=https://docs.docker.com
  4. After=network-online.target firewalld.service
  5. Wants=network-online.target
  6.   
  7. [Service]
  8. Type=notify
  9. # the default is not to use systemd for cgroups because the delegate issues still
  10. # exists and systemd currently does not support the cgroup feature set required
  11. # for containers run by docker
  12. ExecStart=/usr/bin/dockerd
  13. ExecReload=/bin/kill -s HUP $MAINPID
  14. # Having non-zero Limit*s causes performance problems due to accounting overhead
  15. # in the kernel. We recommend using cgroups to do container-local accounting.
  16. LimitNOFILE=infinity
  17. LimitNPROC=infinity
  18. LimitCORE=infinity
  19. # Uncomment TasksMax if your systemd version supports it.
  20. # Only systemd 226 and above support this version.
  21. #TasksMax=infinity
  22. TimeoutStartSec=0
  23. # set delegate yes so that systemd does not reset the cgroups of docker containers
  24. Delegate=yes
  25. # kill only the docker process, not all processes in the cgroup
  26. KillMode=process
  27. # restart the docker process if it exits prematurely
  28. Restart=on-failure
  29. StartLimitBurst=3
  30. StartLimitInterval=60s
  31.   
  32. [Install]
  33. WantedBy=multi-user.target
复制代码


  • chmod +x /etc/systemd/system/docker.service 给docker.service文件添加实行权限
  • systemctl daemon-reload 重新加载配置文件(每次有修改docker.service文件时都要重新加载下)
  • systemctl start docker 启动docker
  • docker -v 查看docker版本



  • systemctl status docker 查看docker状态

表现如上图则表现docker启动成功
daemon.json配置文件

  1. - sudo mkdir -p /etc/docker
  2. - vim daemon.json
复制代码
daemon.json的配置文件内容如下:
{
“registry-mirrors”: [
“https://docker.1ms.run”,
“https://do.nark.eu.org”,
“https://hub.geekery.cn”,
“https://docker.linkedbus.com”,
“https://docker.cloudlayer.icu”,
“https://a.ussh.net”,
“https://docker.5z5f.com”
]
}
这里特殊提醒一下 :该配置文件为镜像加速文件,如已经无法利用可去网站查找其他的镜像加速网址,例如阿里云镜像加速网址等等
  1. - systemctl daemon-reload
  2. - systemctl restart docker
复制代码
安装docker-compose

条件

留意版本号
安装

上传docker-compose到 /usr/local/bin目录下面
(可以从docker-compose官网下载,也可以从github上下载)
下载所在:https://github.com/docker/compose/releases
步骤



  • cd /usr/local/bin

  • chmod +x /usr/local/bin/docker-compose
  • docker-compose -v
效果图


安装gitea

步骤



  • 上传docker-compose-gitea.yml到/usr/local/bin目录
  1. # docker-compose-gitea.yml内容示例如下
  2. version: "3"
  3. networks:
  4.   gitea:
  5.     external: false
  6. services:
  7.   server:
  8.     image: gitea/gitea:1.19
  9.     container_name: gitea
  10.     environment:
  11.       - USER_UID=1000
  12.       - USER_GID=1000
  13.     restart: always
  14.     networks:
  15.       - gitea
  16.     volumes:
  17.       - /home/local/gitea/data:/data
  18.       - /home/local/gitea/timezone:/etc/timezone:ro
  19.       - /home/local/gitea/localtime:/etc/localtime:ro
  20.     ports:
  21.       - "8081:3000"
  22.       - "8082:22"
复制代码


  • 实行docker-compose命令
  • 打开浏览器输入:ip:8081端口(8081是yml配置文件里面指定好的)
  • 初始gitea配置
  • 创建构造
  • 创建堆栈
  • 上传代码
  • 拉取代码
  • 提交分支
  • 查看更新状态
命令

  1. cd /usr/local/bin
  2. docker-compose -f docker-compose-gitea.yml up -d
复制代码
效果图

实行docker-compose命令


接下来打开浏览器输入linux本机的ip所在加上8081端口,就可以看到gitea的页面了,然后按照提示进行配置即可。
浏览器登录gitea

例如本机ip所在为http://192.168.xxx.xxx:8081/(xxx为自界说ip所在,本例子隐蔽以是用xxx)
浏览器初始gitea配置


如下为样本示例

登录之后,创建构造,创建堆栈,上传代码,拉取代码,提交分支,查看更新状态等操作。
创建构造



创建堆栈





Drone 安装

步骤


上述新令牌先生存好,只会出现一次,下次就看不到了。然后再进行创建应用。


进入这个页面之后先保持不动,切换到linux操作命令行,实行如下命令:
  1. cd /usr/local/bin
  2. docker-compose -f docker-compose-gitea.yml up -d
复制代码
然后回到浏览器页面,点击创建应用,然后复制应用所在,回到linux命令行
实行如下命令:
  1. cd /usr/local/bin
复制代码
将docker-compose-drone.yml从网站上下载出来,移动到/usr/local/bin目录下如图

然后实行如下命令:
  1. vim docker-compose-drone.yml
复制代码
  1. # docker-compose-drone.yml文件示例内容如下
  2. version: '3'
  3. services:
  4.   drone-server:
  5.     restart: always
  6.     image: drone/drone:2.13.0
  7.     container_name: drone-server
  8.     ports:
  9.       - "8083:80"
  10.     volumes:
  11.       - /home/local/drone/server/drone:/var/lib/drone/
  12.       - /home/local/drone/server/data:/data/
  13.     environment:
  14.       - DRONE_GITEA_SERVER=http://192.168.126.130:8084
  15.       - DRONE_GITEA_CLIENT_ID=3b972c45-59ab-4e9b-800e-8c436cd37b59
  16.       - DRONE_GITEA_CLIENT_SECRET=gto_m3omsxcricdv5pngfmvsddks5zczs37l5tyw25zlbpesebca4q5q
  17.       - DRONE_SERVER_HOST=192.168.126.130:8083
  18.       - DRONE_SERVER_PROTO=http
  19.       - DRONE_RPC_SECRET=eebf4781aa0d19a63aaac1ad9706e1ecbf3d8f6e
  20.       - DRONE_GIT_ALWAYS_AUTH=true
  21.       - DRONE_GIT_USERNAME=adminwl
  22.       - DRONE_GIT_PASSWORD=links@123
  23.       - DRONE_USER_CREATE=username:root,admin:true
  24.   
  25.   drone-runner:
  26.     restart: always
  27.     container_name: drone-runner
  28.     image: drone/drone-runner-docker:1.2
  29.     volumes:
  30.       - /var/run/docker.sock:/var/run/docker.sock:rw
  31.     environment:
  32.       - DRONE_RPC_PROTO=http
  33.       - DRONE_RPC_HOST=drone-server
  34.       - DRONE_RPC_SECRET=eebf4781aa0d19a63aaac1ad9706e1ecbf3d8f6e
  35.       - DRONE_RUNNER_NAME=drone-runner
  36.       - DRONE_RUNNER_CAPACITY=2
复制代码
docker-compose-drone.yml文件内容操作如下图:

  1. docker-compose -f docker-compose-drone.yml up -d
复制代码

这个地方特殊提醒一下:

在我修改了一次docker-compose-drone.yml文件之后,实行docker-compose -f docker-compose-drone.yml up -d
命令时,出现如下报错:

下面附上办理方法
  1. sysctl net.ipv4.ip_forward
  2. sudo sysctl net.ipv4.ip_forward=1
  3. vim /etc/sysctl.conf
复制代码
sysctl.conf中参加net.ipv4.ip_forward=1,这个为上述vim里面的操作
  1. sudo sysctl -p
  2. systemctl restart docker
复制代码

进行防火墙开放8081 与 8083 端口操作如图

  1. firewall-cmd --zone=public --add-port=8081/tcp --permanent
  2. firewall-cmd --zone=public --add-port=8083/tcp --permanent
  3. firewall-cmd --reload
复制代码

访问drone的页面:http://ip:8083

效果图

例如本机ip所在为http://192.168.xxx.xxx:8083/(xxx为自界说ip所在,本例子隐蔽以是用xxx)



如图填写注册信息
进去之后效果图如图


实现多用户共享文件如图:









非主动化部署

nginx安装



  • 安装nginx配置情况
  1. yum -y install gcc
  2. yum install -y gcc-c++
  3. yum install -y pcre pcre-devel
  4. yum install -y zlib zlib-devel
  5. yum install -y openssl openssl-devel
复制代码
下载nginx安装包
  1. wget http://nginx.org/download/nginx-1.21.2.tar.gz
复制代码
  1. mkdir nginx #创建nginx解压之后的文件
  2. cp nginx-1.21.2.tar.gz nginx #将压缩包移入nginx文件
  3. tar -xzvf nginx-1.21.2.tar.gz nginx #解压压缩包
  4. cd nginx-1.21.2
复制代码
输入一下命令进行编译
  1. ./configure \
  2. --prefix=/usr/local/nginx \
  3. --pid-path=/var/run/nginx.pid \
  4. --lock-path=/var/lock/nginx.lock \
  5. --error-log-path=/var/log/nginx/error.log \
  6. --http-log-path=/var/log/nginx/access.log \
  7. --with-http_gzip_static_module \
  8. --http-client-body-temp-path=/var/temp/nginx/client \
  9. --http-proxy-temp-path=/var/temp/nginx/proxy \
  10. --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
  11. --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
  12. --http-scgi-temp-path=/var/temp/nginx/scgi
复制代码
  1. make || make install
  2. cd /usr/local/nginx/sbin
复制代码

然后运行它

redis安装



  • 下载redis的安装包
    下载所在:Index of /releases/

可自行选择版本,本例选择图中红框中的版本,下载到/usr/local/software目录下
  1. tar -zxvf redis-7.2.3.tar.gz #解压redis
  2. mv redis-7.2.3 /usr/local/ #移动到/usr/local目录下
复制代码


cd /usr/local/redis-7.2.3 #进入到redis-7.2.3的目录
make install #编译安装
ls #查看redis-server是否安装成功

  1. vim redis.conf #修改配置文件
复制代码
解释掉bind 127.0.0.1

添加如下代码

找到daemonize 将no后面改为yes

将protected-mode 设置成no



  • 启动redis
  1. systemctl start redis #启动redis
  2. systemctl enable redis #设置开机自启
  3. systemctl status redis #查看redis状态
复制代码

  1. firewall-cmd --zone=public --add-port=6379/tcp --permanent #开放6379端口
  2. firewall-cmd --reload #重新加载防火墙
复制代码

  1. which redis-server #查看redis-server的安装路径
  2. ./redis-server #启动redis
复制代码

jdk安装



  • 从官网上下载jdk
    下载所在http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • 将安装包移动到/usr/local/software目录下

  • 解压安装包
  1. tar -zxvf jdk-8u161-linux-x64.tar.gz
  2. mv jdk-8u161-linux-x64.tar.gz jdk #重命名
复制代码
效果图如下:



  • 配置情况变量
  1. vim /etc/profile
复制代码
在文件末尾添加如下内容:
  1. export JAVA_HOME=/usr/local/software/jdk
  2. export PATH=$JAVA_HOME/bin:$PATH
  3. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HEMO/lib/tools.jar
复制代码

  1. java -version
复制代码

得到如上图则表现jdk安装成功
主动化部署

tomcat

  1. docker pull tomcat #拉取tomcat镜像
  2. cd root
  3. mkdir tomcat || cd tomcat
  4. docker run -id --name=c_tomcat -p 8090:8080 -v $PWD:/usr/local/tomcat/webapps tomcat
  5. #$PWD表示宿主机的当前目录在这里表示/root/tomcat
  6. docker start tomcat
  7. mkdir test
复制代码
把xyj.zip上传到/root/tomcat/test下面,并解压缩

用浏览器访问ip:8090/test/xyj.html

nginx

  1. docker pull nginx
  2. docker run -d --name nginx01 -p 3344:80 nginx
  3. curl localhost:3344
复制代码

打开浏览器访问页面 ip:3344



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

笑看天下无敌手

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表