跳到元数据的末尾
进入元数据的开始

概述

确保您已经检查了整个安装过程

在继续执行此页上的说明之前,请确保已按照中所述复习了整个安装过程安装Artifactory

Artifactory Docker镜像可以从Bintray中提取并作为Docker容器运行。

为此,您需要在计算机上正确安装和配置Docker客户机。关于安装和使用Docker的详细信息,请参见码头工人的文档

使用Docker运行Artifactory 4.x

Artifactory作为Docker容器在5.0版中已经完全重新设计。如果您正在运行Artifactory的以前版本,请参考使用Docker运行4. in the Artifactory。x用户指南

码头工人组成

我们建议在Docker上运行Artifactory的方法是使用码头工人组成.这将确保在单个具有预配置参数的YAML文件中指定所需的所有服务。

向Java cacerts添加自签名证书

您可以向Artifactory添加额外的自签名证书的Java cacerts,所以他们我们会得到Artifactory的信任。来,将所需的证书放在主机上的一个目录中并通过目录作为卷的“码头工人运行”挂载到/artifactory_extra_certs的命令:"docker run——name artifactory -d -p 8081:8081 -v /path/to/certs:/artifactory_extra_certs docker.bintray.io/jfrog/artifactory-pro:latest"容器的入口点将它们添加到Java中在启动Artifactory之前使用cacert密钥存储库。




使用Docker Compose

要设置一个由多个容器组成的Artifactory环境(例如,一个数据库,一个NGINX负载均衡器和一个Artifactory运行在不同的容器中),您可以使用docker-compose

有关Docker Compose的详细信息,请参阅码头工人的文档

Artifactory OSSArtifactory职业而且Artifactory哈都可以使用Docker Compose运行。有关详细的文档和示例Compose文件,展示了使用Docker Compose设置Artifactory的各种方法,请参考artifactory-docker-examplesGitHub上的存储库。


Docker上的Artifactory

将Artifactory作为容器运行是简单而直接的,包括以下基本步骤:

由于在Docker容器中运行的Artifactory实例是可变的,一旦容器被移除,所有的数据和配置文件都将丢失。如果希望数据持久(例如升级到新版本时),还应该执行下一步。

拉出Artifactory Docker映像

Artifactory Docker镜像可以通过执行以下相应的Docker命令从Bintray中提取,具体取决于您是提取Artifactory OSS还是Artifactory Pro:

拉出Artifactory Pro Docker镜像
Docker pull Docker .bintray.io/jfrog/artifactory-pro:latest

拉动Artifactory OSS Docker镜像
Docker pull Docker .bintray.io/jfrog/artifactory-oss:最新的

拉出Artifactory CE Docker镜像
Docker pull Docker .bintray.io/jfrog/artifactory- cppp -ce

运行一个Artifactory容器

方法列出已下载的Docker映像码头工人的图片命令,该命令应该显示如下输出:

$ docker images存储库标签镜像ID创建大小docker.bintray。io/jfrog/artifactory-pro latest da70b82904e7 2 days ago 861.5 MB…

要启动一个Artifactory容器,根据你运行的是Artifactory Pro还是Artifactory OSS,使用下面相应的命令:

在容器中运行Artifactory Pro
$ docker run——name artifactory -d -p 8081:8081 docker.bintray.io/jfrog/artifactory-pro:最新版本

在容器中运行Artifactory OSS
$ docker run——name artifactory -d -p 8081:8081 docker.bintray.io/jfrog/artifactory-oss:最新版本

在容器中运行Artifactory CE
$ docker run——name artifactory -d -p 8081:8081 docker.bintray.io/jfrog/artifactory- cppp -ce:最新版本


设置Java内存参数

要控制Artifactory使用的内存,可以传递环境变量EXTRA_JAVA_OPTIONS。

例如:

将JVM内存传递给Artifactory Docker容器
$ docker run——name artifactory -d -p 8081:8081 -e EXTRA_JAVA_OPTIONS='-Xms512m -Xmx2g -Xss256k -XX:+UseG1GC' docker.bintray.io/jfrog/artifactory-pro:latest

支持的环境变量

Artifactory Docker映像可以使用环境变量进行定制。

通过Docker执行命令将这些值作为环境变量传递。

例如:

docker运行-d——name art -e SERVER_XML_ARTIFACTORY_MAX_THREADS=500 -p 8081:8081docker.bintray.io / jfrog / artifactory-pro: 6.6.3

Artifactory将在Tomcat server.xml中将maxThreads设置为“500”。

Java系统属性

您可以将Java系统属性传递给运行Artifactory的JVM

变量
功能
默认的
EXTRA_JAVA_OPTIONS
将Java选项传递给Artifactory JVM

数据库

数据库环境变量记录在修改数据库页面


Tomcat Server.xml

变量
功能
默认的
SERVER_XML_ARTIFACTORY_PORT
设置自定义Artifactory端口。 8081
SERVER_XML_ARTIFACTORY_MAX_THREADS
设置自定义Artifactory maxThreads。 200
SERVER_XML_ACCESS_MAX_THREADS
设置自定义Access maxThreads。 50
SERVER_XML_ARTIFACTORY_EXTRA_CONFIG
添加一个额外的Artifactory连接器配置。
SERVER_XML_ACCESS_EXTRA_CONFIG
添加额外的访问连接器配置
SERVER_XML_EXTRA_CONNECTOR
向Tomcat添加另一个连接器。例如支持SSL。



ha特定的环境变量

将环境变量传递给入口点脚本

Artifactory Pro Docker映像的入口点脚本接受各种环境变量。下表中记录了这些参数,可用于操作各种特定于ha的设置。当使用编排工具(如Kubernetes或Docker Compose)来启动新的Artifactory节点时,设置以下变量特别有用。属性的详细信息ha-node.properties详情请参阅设置存储配置

变量

功能

默认值
HA_IS_PRIMARY
确定该节点是设置为集群中的主节点还是成员节点。 -
HA_NODE_ID
节点的值。ha-node中的Id '参数。属性文件。 节点——美元(主机名)
HA_HOST_IP
容器的IP地址。此变量用于组成完整的上下文。url,仅当$HA_CONTEXT_URL变量未设置时。通过运行“hostname -i”确定。 $(主机名我)
HA_CONTEXT_URL
context的值。Url '参数在生成的ha-node。属性文件。这是向集群成员公开的节点URL。如果没有设置,$HA_HOST_IP变量将用于派生完整的context.url。 http:// HA_HOST_IP美元:8081 / artifactory
HA_MEMBERSHIP_PORT
节点的Hazelcast成员端口。 10002
ART_PRIMARY_BASE_URL
只有当节点不是同一个docker网络的一部分时,才可以在成员节点上设置该参数,这样它们就不能通过容器名相互访问,或者如果您指定了主节点的名称容器不是“artifactory-node1”。入口点脚本将使用此URL向主节点发送HTTP请求,以等待主节点启动。 http://artifactory-node1:8081/artifactory
HA_DATA_DIR
' artificial .ha.data. data '的值。ha-node中的Dir '参数。属性文件。 /var/opt/jfrog/artifactory /数据
HA_BACKUP_DIR
' artificial .ha.backup. backup '的值。ha-node中的Dir '参数。属性文件。 /var/opt/jfrog/artifactory /备份



管理数据持久性

“artifactory”用户

以前,Artifactory Docker容器以用户身份启动,但由用户运行artifactory.从版本6.2开始,用户artifactory用于启动和运行Docker容器。注意:

  • artifactory用户默认ID为1030
  • artifactory用户必须对挂载在Artifactory容器上的任何持久存储具有写权限

为了在移除Artifactory Docker容器后保留数据和配置,您需要将它们存储在挂载到Docker容器的外部卷上。有两种方法:

  • 使用主机目录
  • 使用名为Volume的Docker

使用主机目录

外部卷是主机文件系统(例如/var/opt/jfrog/artifactory).当你把这个传递给码头工人运行命令,Artifactory进程将使用它来读取配置并存储数据。

要挂载上面的例子,你可以使用下面的命令:

$ docker run——name artifactory-pro -d -v /var/opt/jfrog/artifactory:/var/opt/jfrog/artifactory -p 8081:8081 docker.bintray.io/jfrog/artifactory-pro:最新版本

这将安装/var/opt/jfrog/artifactory目录到容器的目录/var/opt/jfrog/artifactory然后将被Artifactory用于配置和数据。

使用名为Volume的Docker

在本例中,您创建了一个名为volume的docker并将其传递给容器。默认情况下,命名卷是目录下的本地目录/var/lib/docker/volumes/ <名称>,但可以设置为与其他位置一起工作。更多细节,请参考Docker文档码头工人卷

下面的例子创建了一个名为volume的Dockerartifactory_data并将其安装到下面的Artifactory容器/var/opt/jfrog/artifactory:

$ docker volume create——name artifactory5_data $ docker run——name artifactory5_data:/var/opt/jfrog/artifactory -p 8081:8081 docker.bintray.io/jfrog/artifactory-pro:最新版本

在这种情况下,即使容器停止并删除,卷仍然存在,并且可以使用上述方法将其附加到新的正在运行的容器码头工人运行命令。


额外配置目录

你可以挂载额外的配置文件,binarystore.xmlartifactory.licdb.properties,即需要您的Artifactory安装。
为此,您需要将主机上的文件或目录挂载到Artifactory Docker容器中/ artifactory_extra_conf文件夹中。当Artifactory Docker容器启动时,它将从/ artifactory_extra_confARTIFACTORY_HOME /等(通常是/var/opt/jfrog/artifactory /等).


文件挂载到/ artifactory_extra_conf会复制过来吗ARTIFACTORY_HOME /等每次容器启动时,都应该避免修改容器中的文件ARTIFACTORY_HOME /等


例1:传入一个自定义db。属性文件


$ docker run——name artifactory_pro -d -v /var/opt/jfrog/artifactory:/var/opt/jfrog/artifactory -v /conf/db.properties:/artifactory_extra_conf/db. properties属性-p 8081:8081 docker.bintray.io/jfrog/artifactory-pro:最新的


例2:传入一个自定义binarstore .xml


$ docker run——name artifactory-pro -d -v /var/opt/jfrog/artifactory:/var/opt/jfrog/artifactory -v /conf/ binarstore .xml:/artifactory_extra_conf/ binarstore .xml -p 8081:8081 docker.bintray.io/jfrog/artifactory-pro:最新版本



Artifactory NGINX Docker镜像

Artifactory Docker镜像可以与Nginx Docker镜像一起运行,Nginx Docker镜像可用于管理SSL、反向代理和其他web服务器功能。具体配置请参见配置NGINX

一个自定义Docker镜像,已经为Artifactory设置了NGINX,可在:'docker.bintray.io / jfrog / nginx-artifactory-pro

码头工人组成

我们建议使用编配工具(如docker-compose)将该容器与Artifactory容器一起运行,这样可以方便地将两个容器联网和链接。看到Artifactory docker-compose示例在JFrogartifactory-docker-examplesGitHub上的存储库。

Artifactory NGINX Docker用户

从6.2版开始,Artifactory Nginx Docker容器以用户身份启动和运行nginx.注意:

  • nginx用户ID是104;组ID为107
  • 命令必须可写任何已挂载的卷nginx用户


要在本地运行映像,请使用:

$ docker run——name artifactory-pro-nginx -d -p 8000:80: -p 8443:443 docker.bintray.io/jfrog/nginx-artifactory-pro:latest .io

这将启动一个默认设置的NGINX实例

  • NGINX监听80和443端口
  • 自签名SSL密钥和证书
  • 转发请求到主机' artifactory '

自定义配置

我们建议根据您的需求定制Artifactory NGINX容器,如下所述。

使用您自己的SSL密钥和证书

  • 将SSL密钥和证书放置在主机上的一个目录中
  • 将目录挂载到Artifactory NGINX容器中/var/opt/jfrog/nginx/ssl

    $ docker run——name artifactory-pro-nginx -d -p 8000:80 -p 8443:443 -v $HOST_SSL_PATH:/var/opt/jfrog/nginx/ssl docker. bintrray .io/jfrog/nginx-artifactory-pro:最新的

使用自定义Artifactory配置文件

要自定义artifactory.confNGINX容器使用的文件,创建你自己的artifactory.conf文件并挂载到容器中:/var/opt/jfrog/nginx/conf.d/artifactory.conf。

为此,您应该使用SKIP_AUTO_UPDATE_CONFIG环境变量禁用配置特性的自动更新

$ docker run——name artifactory-pro-nginx -d -p 8000:80 -p 8443:443 \ -e SKIP_AUTO_UPDATE_CONFIG=true \ -v $CUSTOM_ART_CONF_FILE:/var/opt/jfrog/nginx/conf.d/artifactory.conf docker.bintray.io/jfrog/nginx-artifactory-pro:latest



使用自定义用户/组ID运行Artifactory Docker

通过传递以下参数,Artifactory Docker容器可以配置为使用自定义用户/组ID运行:"——user $uid:$gid"。

挂载的主机目录必须由给定的用户id可写。

下面的示例将使Artifactory以用户ID 1234和组ID 4321运行。

$ docker run——name artifactory-pro——user 1234:4321 -d -v /var/opt/jfrog/artifactory:/var/opt/jfrog/artifactory -p 8081:8081 docker.bintray.io/jfrog/artifactory-pro:最新版本

升级Artifactory

关于如何升级在Docker容器中运行的Artifactory,请参考在Docker容器中运行升级Artifactory页面。


使用不同的数据库运行Artifactory

默认情况下,Artifactory使用内置的嵌入式Derby数据库运行,但是,Artifactory支持其他数据库。若要切换到其他受支持的数据库,请参阅修改数据库


从源代码构建Artifactory OSS

Artifactory OSS Docker映像源可供下载,允许您自己构建映像。详情请参阅构建Artifactory OSS


访问Artifactory

一旦Artifactory容器启动并运行,你就可以通过浏览到下面的链接来访问Artifactory:

http://SERVER_DOMAIN:8081/artifactory



针对Windows限制的Docker

在Windows上运行Docker有一个已知的限制。

限制说明如下JIRA问题.这里有一个可选的解决方案,但不建议用于生产部署。


故障排除码头工人

请参考主要内容故障排除页面。



观看录像



  • 没有标签