关于跳板机,内网在docker上部署环境

前言:

	需要准备的是内网环境的linux需要安装好docker
	内网安装docker 链接
	我们所有的安装包都是基于外网的linux安装好docker后,联网安装mysql、redis等,然后进行打包上传

打包命令

docker save -o redis.tar redis:latest
docker save -o 打包名称 redis:版本

拷贝打包的文件

scp -P 端口 本地文件地址 用户名@ip:拷贝地址
示例:
scp -P 3003 /home/docker/mysql.tar root@11.99.10.13:/home/app/docker

在这里插入图片描述

登录跳板机

ssh root@11.99.10.13 -p 3003
-p 为端口号,我这默认不加的话端口号为22

登陆后有密码输入密码

解压命令

首先切换目录

cd /home/app/docker/

可以使用ls查看文件是否拷贝过来

解压
这里根据自己打包的名字进行解压

docker load -i redis.tar

解压完成后,查看images

docker images

下面开始启动容器

mysql

docker run --restart=unless-stopped -d --name mysql -p 9000:3306 -v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /home/mysql/logs:/var/log/mysql -v /home/mysql/data:/var/lib/mysql -v /etc/localtime:/etc/localtime:ro -e MYSQL_ROOT_PASSWORD=jinyuMysql mysql:v1
  • 文件挂载地址,/home/mysql
  • 如果需要修改密码自行修改

redis

docker run --restart=always --log-opt max-size=1024m --log-opt max-file=2 -p 9001:6379 --name redis -v /home/redis/conf/redis.conf:/etc/redis/redis.conf  -v /home/redis/data:/data -v /etc/localtime:/etc/localtime:ro -d redis:v1 redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456
  • 文件挂载地址,/home/redis
  • 如果需要修改密码自行修改

nginx

docker run --name nginx -d -p 9005:9005 -v /home/nginx/html:/etc/nginx/html -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf  -v  /home/nginx/logs:/var/log/nginx -v /etc/localtime:/etc/localtime:ro nginx:v1
  • 文件挂载地址,/home/nginx
  • nginx的config需要提前准备好,自行准备,我这里只是随手放了个模板
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
	server {
        listen       8081;
        server_name  localhost;
        location / {
            root   nanbuxinchengweb-open;
            index  index.html index.htm;
			try_files $uri $uri/ /index.html;
        }
		location /preview {
            proxy_set_header Host $host;  
			proxy_set_header X-Real-IP $remote_addr;  
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			# 本地运行的kkFileView的地址
			proxy_pass http://127.0.0.1:8012; 
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   nanbuxinchengweb;
        }
    }
}

jdk 目前我的jdk只是解压到docker images ,并没有启动,关于这一块我就不多介绍,自行研究下。

jar包部署

在jar包的同一目录下新建一个Dockerfile

vi Dockerfile

文件内新增以下内容

#自己的jdk名称:版本
FROM openjdk:8-jre
#将jar包添加到docker中并命名app.jar
ADD ruoyi.jar app.jar
#指定端口
EXPOSE 9002
#启动jar命令
ENTRYPOINT ["java","-jar","app.jar","--server.port=9002"]

添加完成后保存退出
在当前文件夹下执行命令,将jar包加入docker

docker build -t ruoyi:1.0.0 .

查看images中是否存在

docker images

启动jar包
第一种方式,如果不涉及别的服务 直接 -p指定映射端口就可

docker run -d -it --name=ruoyi -p 8081:8081 -v /home/app:/usr/data ruoyi:1.0.0

第二种方式,如果涉及别的服务 就不能使用 -p指定映射端口,就要使用–net host

docker run -d -it --net host --name=ruoyi -v /home/app:/usr/data ruoyi:1.0.0
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Docker部署SonarQube,您需要遵循以下步骤: 1. 首先,您需要安装Docker并确保它正在运行。 2. 接下来,您需要从Docker Hub上下载SonarQube的镜像。您可以使用以下命令: docker pull sonarqube 3. 一旦下载完成,您可以使用以下命令启动SonarQube容器docker run -d --name sonarqube -p 9000:9000 sonarqube 这将在后台启动SonarQube容器,并将其映射到主机的9000端口。 4. 等待一段时间,直到SonarQube容器启动并运行。您可以使用以下命令检查容器的状态: docker ps 如果容器正在运行,则应该看到一个名为“sonarqube”的容器。 5. 最后,您可以通过浏览器访问SonarQube Web界面,该界面应该在以下URL上可用: http://localhost:9000 您可以使用默认的管理员凭据(用户名:admin,密码:admin)登录到SonarQube中。 希望这可以帮助您在Docker部署SonarQube。 ### 回答2: SonarQube是一个静态代码分析工具,可以帮助开发人员和团队持续改进代码质量。Docker是一个容器化平台,能够简化应用程序的部署和管理。将SonarQube部署Docker上可以提高生产力和可扩展性,也能够简化维护和操作。 以下是部署SonarQube的步骤: 第1步:安装DockerDocker Compose 在开始之前,需要确保在本机中已经安装了DockerDocker Compose。安装完成后,可以通过以下命令检查是否成功安装: docker -v docker-compose -v 第2步:创建Docker Compose文件 在将SonarQube部署Docker上之前,需要创建一个Docker Compose文件。这个文件定义了Docker容器的配置信息,用于部署SonarQube和配置数据库。可以使用以下内容创建docker-compose.yml文件: version: ‘3’ services: sonarqube: image: sonarqube ports: - "9000:9000" depends_on: - db db: image: postgres environment: - POSTGRES_USER=sonar - POSTGRES_PASSWORD=sonar volumes: - postgresql:/var/lib/postgresql volumes: postgresql: 注意:上述的PostgreSQL配置是用于在Docker容器部署SonarQube时使用的。如果使用外部数据源,则需要进行更改。 第3步:启动Docker容器 在创建了Docker Compose文件后,可以使用以下命令启动Docker容器docker-compose up -d 这样就可以在后台启动SonarQube容器。 第4步:访问SonarQube 在启动Docker容器后,可以在浏览器中输入http://localhost:9000访问SonarQube。可以按照提示完成配置,并创建一个新的项目。 这样,SonarQube就成功的部署在了Docker上。使用Docker部署SonarQube是一个非常方便的方式,它简化了部署的过程,并提高了生产力和可扩展性。此外,使用Docker还可以轻松地将SonarQube集成到CI/CD流程中,帮助团队更好的持续改进代码质量。 ### 回答3: SonarQube是一款用于静态代码分析的开源软件,它可以对代码进行细致的检查并提供有关代码质量、复杂性和安全性方面的反馈。在团队合作开发的过程中,SonarQube能够帮助团队有效控制代码的质量,从而提高代码的可读性、可维护性和安全性。而Docker是一种轻量级的容器化技术,它可以将应用程序和其依赖的环境打包成一个完整的容器,方便部署和管理。因此,将SonarQube和Docker结合起来使用是一种方便、高效和安全的部署方式。 部署SonarQube在Docker上需要以下几个步骤: 1. 下载SonarQube镜像:通过Docker Hub从公共的镜像仓库下载SonarQube镜像。可以使用以下命令:docker pull sonarqube:latest 2. 创建容器:使用以下命令创建SonarQube容器docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube:latest 其中,-d参数表示在后台运行容器,--name参数指定容器的名称,-p参数映射容器内部的端口到宿主机上的端口。 3. 访问SonarQube:通过浏览器访问http://localhost:9000(或使用宿主机的IP地址)。在第一次启动时,需要输入默认的用户名和密码(admin/admin)进行登录。 4. 配置SonarQube:在SonarQube页面上,可以进行一些配置,例如添加项目、配置扫描程序。 由于SonarQube的运行需要占用一定的系统资源,因此可以通过在Docker容器中使用资源限制措施来保证宿主机的性能。例如可以使用以下命令设置CPU和内存的限制: docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 --cpus=2 --memory=4g sonarqube:latest 此外,如果需要将SonarQube的数据和配置保存在宿主机上,可以将其挂载到容器中。例如,可以使用以下命令将宿主机的/data/sonarqube目录挂载到容器的/opt/sonarqube目录下: docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 --mount type=bind,src=/data/sonarqube,dst=/opt/sonarqube sonarqube:latest 综上所述,将SonarQube部署Docker上能够方便地进行静态代码分析,并且避免了对宿主机的污染。这种部署方式使得SonarQube的使用更加便捷、高效、可控和安全。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值