JFrog&docker部署&接入mysql
1.JFrog-docker部署
1.1安装docker环境
[root@JFrog ~# sh install-docker.sh i
bash-completion-2.1-8.el7.noarch
bash-completion-extras-2.1-11.el7.noarch
"/usr/bin/containerd" -> "/Project/softwares/docker/containerd"
"/usr/bin/containerd-shim" -> "/Project/softwares/docker/containerd-shim"
"/usr/bin/containerd-shim-runc-v2" -> "/Project/softwares/docker/containerd-shim-runc-v2"
"/usr/bin/ctr" -> "/Project/softwares/docker/ctr"
"/usr/bin/docker" -> "/Project/softwares/docker/docker"
"/usr/bin/docker-compose" -> "/Project/softwares/docker/docker-compose"
"/usr/bin/dockerd" -> "/Project/softwares/docker/dockerd"
"/usr/bin/docker-init" -> "/Project/softwares/docker/docker-init"
"/usr/bin/docker-proxy" -> "/Project/softwares/docker/docker-proxy"
"/usr/bin/runc" -> "/Project/softwares/docker/runc"
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
Client:
Version: 20.10.24
API version: 1.41
Go version: go1.19.7
Git commit: 297e128
Built: Tue Apr 4 18:17:06 2023
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.24
API version: 1.41 (minimum version 1.12)
Go version: go1.19.7
Git commit: 5d6db84
Built: Tue Apr 4 18:23:02 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.6.20
GitCommit: 2806fc1057397dbaeefbea0e4e17bddfbd388f38
runc:
Version: 1.1.5
GitCommit: v1.1.5-0-gf19387a6
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Docker Compose version v2.23.0
安装成功,欢迎使用Nolen_H二进制docker安装脚本,欢迎下次使用!
1.2 导入JRfog镜像
[root@JFrog etc]# docker load -i docker_JFrog_v7.71.23.tar.gz
8c3720d31b23: Loading layer [==================================================>] 26.08MB/26.08MB
dee876a34cd6: Loading layer [==================================================>] 117.3MB/117.3MB
b7c61280f6ef: Loading layer [==================================================>] 15.87kB/15.87kB
5545a6bc4a62: Loading layer [==================================================>] 6.656kB/6.656kB
1d264e1e26f5: Loading layer [==================================================>] 7.168kB/7.168kB
1ff677458505: Loading layer [==================================================>] 3.072kB/3.072kB
2dc457c9b024: Loading layer [==================================================>] 420.5MB/420.5MB
71aa3162d1d1: Loading layer [==================================================>] 2.021GB/2.021GB
556c22ac8aa0: Loading layer [==================================================>] 72.7kB/72.7kB
bba764a36b38: Loading layer [==================================================>] 73.22kB/73.22kB
5f70bf18a086: Loading layer [==================================================>] 1.024kB/1.024kB
Loaded image: releases-docker.jfrog.io/jfrog/artifactory-pro:7.71.23
1.3 创建持久化目录
[root@JFrog ~]# mkdir /artifactory-data/
[root@JFrog ~]# chmod -R 755 /artifactory-data/
[root@JFrog ~]# chown -R 1030:1030 /artifactory-data/
[root@JFrog ~]# ll -d /artifactory-data/
drwxr-xr-x 2 1030 1030 6 11月 11 22:13 artifactory-data
1.4 启动docker容器
[root@JFrog ~]# docker run -d --name JFrog_test -p 8081:8081 -p 8082:8082 -v /artifactory-data/:/var/opt/jfrog/artifactory/ releases-docker.jfrog.io/jfrog/artifactory-pro:7.71.23
[root@JFrog ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5d73267a9ce1 releases-docker.jfrog.io/jfrog/artifactory-pro:7.71.23 "/entrypoint-artifac…" 2 minutes ago Up 2 minutes 0.0.0.0:8081-8082->8081-8082/tcp, :::8081-8082->8081-8082/tcp artifactory
1.5 登录WEBUI查看
2.JFrof接入mysql
参考资料:https://www.jfrogchina.com/docs/docker-install-artifactory-1/
2.1 安装docker环境
[root@JFrog ~# sh install-docker.sh i
bash-completion-2.1-8.el7.noarch
bash-completion-extras-2.1-11.el7.noarch
"/usr/bin/containerd" -> "/Project/softwares/docker/containerd"
"/usr/bin/containerd-shim" -> "/Project/softwares/docker/containerd-shim"
"/usr/bin/containerd-shim-runc-v2" -> "/Project/softwares/docker/containerd-shim-runc-v2"
"/usr/bin/ctr" -> "/Project/softwares/docker/ctr"
"/usr/bin/docker" -> "/Project/softwares/docker/docker"
"/usr/bin/docker-compose" -> "/Project/softwares/docker/docker-compose"
"/usr/bin/dockerd" -> "/Project/softwares/docker/dockerd"
"/usr/bin/docker-init" -> "/Project/softwares/docker/docker-init"
"/usr/bin/docker-proxy" -> "/Project/softwares/docker/docker-proxy"
"/usr/bin/runc" -> "/Project/softwares/docker/runc"
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
Client:
Version: 20.10.24
API version: 1.41
Go version: go1.19.7
Git commit: 297e128
Built: Tue Apr 4 18:17:06 2023
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.24
API version: 1.41 (minimum version 1.12)
Go version: go1.19.7
Git commit: 5d6db84
Built: Tue Apr 4 18:23:02 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.6.20
GitCommit: 2806fc1057397dbaeefbea0e4e17bddfbd388f38
runc:
Version: 1.1.5
GitCommit: v1.1.5-0-gf19387a6
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Docker Compose version v2.23.0
安装成功,欢迎使用Nolen_H二进制docker安装脚本,欢迎下次使用!
2.2 导入JFrog镜像和mysql镜像
[root@JFrog etc]# docker load -i docker_JFrog_v7.71.23.tar.gz
8c3720d31b23: Loading layer [==================================================>] 26.08MB/26.08MB
dee876a34cd6: Loading layer [==================================================>] 117.3MB/117.3MB
b7c61280f6ef: Loading layer [==================================================>] 15.87kB/15.87kB
5545a6bc4a62: Loading layer [==================================================>] 6.656kB/6.656kB
1d264e1e26f5: Loading layer [==================================================>] 7.168kB/7.168kB
1ff677458505: Loading layer [==================================================>] 3.072kB/3.072kB
2dc457c9b024: Loading layer [==================================================>] 420.5MB/420.5MB
71aa3162d1d1: Loading layer [==================================================>] 2.021GB/2.021GB
556c22ac8aa0: Loading layer [==================================================>] 72.7kB/72.7kB
bba764a36b38: Loading layer [==================================================>] 73.22kB/73.22kB
5f70bf18a086: Loading layer [==================================================>] 1.024kB/1.024kB
Loaded image: releases-docker.jfrog.io/jfrog/artifactory-pro:7.71.23
[root@JFrog etc]# docker login --username=aliyun6545622340 registry.cn-hangzhou.aliyuncs.com
Password:Fgh036015
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
[root@JFrog etc]# docker pull registry.cn-hangzhou.aliyuncs.com/nolen_linux/mysql:8.0.36-oracle
8.0.36-oracle: Pulling from nolen_linux/mysql
bd37f6d99203: Pull complete
d2433cba0951: Pull complete
13702d9fe3c3: Pull complete
83bcc87284a1: Pull complete
c38d8660e1fa: Pull complete
7e1bc321f421: Pull complete
bddd54b9c549: Pull complete
4eaae1e844ac: Pull complete
5196e1e87d8f: Pull complete
6586d096303c: Pull complete
cf55ff1c80af: Pull complete
Digest: sha256:c57363379dee26561c2e554f82e70704be4c8129bd0d10e29252cc0a34774004
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/nolen_linux/mysql:8.0.36-oracle
registry.cn-hangzhou.aliyuncs.com/nolen_linux/mysql:8.0.36-oracle
2.3 创建安装目录
[root@JFrog JFdata]# mkdir /root/jfrog
[root@JFrog JFdata]# mkdir -p /root/jfrog/artifactory/var/etc/
[root@JFrog JFdata]# touch /root/jfrog/artifactory/var/etc/system.yaml
[root@JFrog JFdata]# chown -R 1030:1030 /root/jfrog/artifactory/var
2.4 配置mysql容器
[root@JFrog JFdata]# docker run -d -p 3306:3306 --name JFrog_db --restart always \
> -e MYSQL_ROOT_PASSWORD=1 \
> registry.cn-hangzhou.aliyuncs.com/nolen_linux/mysql:8.0.36-oracle
9468bb47afbcfe69fbb436e4489273f2040e2542e6fda09d2df28fc316a417ce
[root@JFrog JFdata]# docker exec -it JFrog_db mysql -uroot -p1
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.36 MySQL Community Server - GPL
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> CREATE DATABASE artdb CHARACTER SET utf8 COLLATE utf8_bin;
Query OK, 1 row affected, 2 warnings (0.00 sec)
mysql> CREATE USER 'artifactory'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT ALL on artdb.* TO 'artifactory'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> Bye
1)下载 MySQL jdbc jar 包,并拷贝至 /root/jfrog/artifactory/var/bootstrap/artifactory/tomcat/lib/
[root@JFrog JFdata]# wget https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java-8.0.13.tar.gz
--2024-11-11 23:04:53-- https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java-8.0.13.tar.gz
正在解析主机 downloads.mysql.com (downloads.mysql.com)... 23.59.130.206, 2600:140b:ac00:285::2e31, 2600:140b:ac00:2ae::2e31
正在连接 downloads.mysql.com (downloads.mysql.com)|23.59.130.206|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 302 Moved Temporarily
位置:https://cdn.mysql.com/archives/mysql-connector-java-8.0/mysql-connector-java-8.0.13.tar.gz [跟随至新的 URL]
--2024-11-11 23:04:54-- https://cdn.mysql.com/archives/mysql-connector-java-8.0/mysql-connector-java-8.0.13.tar.gz
正在解析主机 cdn.mysql.com (cdn.mysql.com)... 23.59.1.189, 2600:140b:ac00:2ac::1d68, 2600:140b:ac00:2a2::1d68
正在连接 cdn.mysql.com (cdn.mysql.com)|23.59.1.189|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:5980103 (5.7M) [application/x-tar-gz]
正在保存至: “mysql-connector-java-8.0.13.tar.gz”
100%[===================================================================================>] 5,980,103 6.49MB/s 用时 0.9s
2024-11-11 23:04:55 (6.49 MB/s) - 已保存 “mysql-connector-java-8.0.13.tar.gz” [5980103/5980103])
[root@JFrog JFdata]# tar zxf mysql-connector-java-8.0.13.tar.gz
[root@JFrog JFdata]# mkdir -p /root/jfrog/artifactory/var/bootstrap/artifactory/tomcat/lib/
[root@JFrog JFdata]# cp mysql-connector-java-8.0.13/mysql-connector-java-8.0.13.jar /root/jfrog/artifactory/var/bootstrap/artifactory/tomcat/lib/
[root@JFrog JFdata]# chown -R 1030:1030 /root/jfrog/artifactory/var
[root@JFrog JFdata]# cat /root/jfrog/artifactory/var/etc/system.yaml #编辑配置文件 /root/jfrog/artifactory/var/etc/system.yaml
configVersion: 1
shared:
node:
id: "art1"
ip: "10.0.0.196"
database:
type: mysql
driver: com.mysql.jdbc.Driver
url: "jdbc:mysql://10.0.0.196:3306/artdb?characterEncoding=UTF-8&elideSetAutoCommits=true&useSSL=false"
username: artifactory
password: password
2.5 配置存储
[root@JFrog JFdata]# mkdir -p /root/jfrog/artifactory/var/etc/artifactory/
[root@JFrog JFdata]# touch /root/jfrog/artifactory/var/etc/artifactory/binarystore.xml
[root@JFrog JFdata]# chown -R 1030:1030 /root/jfrog/artifactory/var
[root@JFrog JFdata]# cat /root/jfrog/artifactory/var/etc/artifactory/binarystore.xml #编辑配置文件 /root/jfrog/artifactory/var/etc/artifactory/binarystore.xml
<?xml version="1.0" encoding="UTF-8"?>
<config version="1">
<chain template="file-system"/>
<provider id="file-system" type="file-system">
<fileStoreDir>/var/opt/jfrog/artifactory/data/artifactory/filestore</fileStoreDir>
</provider>
</config>
2.6 安装并启动
[root@JFrog JFdata]# docker run -d --name artifactory -p 8081:8081 -p 8082:8082 -v /root/jfrog/artifactory/var/:/var/opt/jfrog/artifactory releases-docker.jfrog.io/jfrog/artifactory-pro:7.71.23
46b3031858df45a787c024d825f70e40d16726b2cadbdc00afa2079934e3eeb3
[root@JFrog JFdata]# docker logs -f artifactory
日志有如下输出,启动成功:
###############################################################
### All services started successfully in 50.958 seconds ###
###############################################################
[root@JFrog ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
46b3031858df releases-docker.jfrog.io/jfrog/artifactory-pro:7.71.23 "/entrypoint-artifac…" About an hour ago Up 22 minutes 0.0.0.0:8081-8082->8081-8082/tcp, :::8081-8082->8081-8082/tcp artifactory
9468bb47afbc registry.cn-hangzhou.aliyuncs.com/nolen_linux/mysql:8.0.36-oracle "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp JFrog_db