1 情况准备
- docker 以及其插件docker compose ,我使用的版本如下图所示:
- postgresql 的jdbc驱动, 我使用的是java8 的42.7.4版本的:pgJDBC 下载地址
2 必要文件创建与编写
我摆设artifactory-cpp-ce是用来作为私有的conan-center 服务的,索性创建目录:artifactory-conan
下述文件,均放置于该目录下即可。
- services:
- artifactory:
- image: docker.bintray.io/jfrog/artifactory-cpp-ce:latest
- container_name: artifactory
- ports:
- - "8081:8081"
- - "8082:8082"
- environment:
- - ARTIFACTORY_HOME=/var/opt/jfrog/artifactory
- - DB_TYPE=postgresql
- - DB_USER=artifactory
- - DB_PASSWORD=123123
- - DB_URL=jdbc:postgresql://postgres:5432/artifactory
- volumes:
- - artifactory_data:/var/opt/jfrog/artifactory
- - ./master.key:/var/opt/jfrog/artifactory/etc/security/master.key
- - ./join.key:/var/opt/jfrog/artifactory/etc/security/join.key
- - ./db.properties:/var/opt/jfrog/artifactory/etc/db.properties
- - ./system.yaml:/var/opt/jfrog/artifactory/etc/system.yaml
- - ./postgresql-42.7.4.jar
- :/var/opt/jfrog/artifactory/tomcat/lib/postgresql-42.7.4.jar
- depends_on:
- postgres:
- condition: service_healthy
- healthcheck:
- test: ["CMD", "pg_isready", "-U", "artifactory"]
- interval: 10s
- timeout: 5s
- retries: 10
- postgres:
- image: postgres:13
- container_name: postgres
- ports:
- - "5432:5432"
- environment:
- POSTGRES_USER: artifactory
- POSTGRES_PASSWORD: 123123
- POSTGRES_DB: artifactory
- volumes:
- - postgres_data:/var/lib/postgresql/data
- healthcheck:
- test: ["CMD-SHELL", "pg_isready -U artifactory"]
- interval: 10s
- timeout: 5s
- retries: 5
- volumes:
- artifactory_data:
- postgres_data:
复制代码
- master.key 是用于加密 Artifactory 数据的主密钥,可以天生一个随机密钥:
- openssl rand -hex 32 > master.key
复制代码
- join.key是用于集群节点间通信的密钥,在单节点情况下通常不需要, 此处创建一个空的 join.key 文件
- db.properties 是配置 artifactory 毗连数据库的文件
- type=postgresql
- driver=org.postgresql.Driver
- url=jdbc:postgresql://postgres:5432/artifactory
- username=artifactory
- password=123123
复制代码
- system.yaml, 这个文件在容器启动后会自己创建的,但是我检察其内容,发现关于数据库的配置是被注释掉的,导致容器内部不停使用默认数据库驱动,而导致出错。
- shared:
- database:
- type: postgresql
- driver: org.postgresql.Driver
- url: jdbc:postgresql://postgres:5432/artifactory
- username: artifactory
- password: 123123
复制代码
- 第1章情况准备中下载到的 pgJDBC 驱动 jar 包
留意:需要开放容器创建时可以访问当前artifactory-conan目录的权限
- 如果使用的是docker-desktop,请在Settings - Resources - Filesharing 添加目录的共享权限。
- 也可以更改用户的所有者来实现,共享权限;
- sudo chown -R 1030:1030 artifactory-conan
复制代码 好了,至此,所有准备工作都已完成。
文件树展示:
3 拉取镜像-创建容器并配景运行
在当前目录执行:
4 访问JFog Artifactory 服务
浏览器访问:127.0.0.1:8081 ,会自动跳转到127.0.0.1:8082/ui/login/页面.
默认用户名:admin
默认密码:password
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |