我已经设置了我的 docker 存储库,下面是
docker-compose.yml
文件:
version: '2'
networks:
prodnetwork:
driver: bridge
services:
nexus:
image: sonatype/nexus3
volumes:
- "nexus-data:/nexus-data"
ports:
- "8081:8081"
- "8082:8082"
- "8083:8083"
- "8084:8084"
- "8085:8085"
- "8086:8086"
- "8087:8087"
- "8088:8088"
networks:
- prodnetwork
jenkins:
image: library/jenkins
ports:
- "8080:8080"
networks:
- prodnetwork
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
- /opt/jenkins/:/var/lib/jenkins/
depends_on:
- nexus
- sonar
environment:
- NEXUS_PORT=8081
- SONAR_PORT=9000
- SONAR_DB_PORT=5432
sonar:
build: ./sonar
ports:
- "9000:9000"
- "5432:5432"
networks:
- prodnetwork
depends_on:
- sonardb
environment:
- SONARQUBE_JDBC_URL=jdbc:postgresql://sonardb:5432/sonar
- SONARQUBE_JDBC_USERNAME=sonar
- SONARQUBE_JDBC_PASSWORD=sonar
sonardb:
networks:
- prodnetwork
image: postgres
environment:
- POSTGRES_USER=sonar
- POSTGRES_PASSWORD=sonar
volumes:
- /opt/postgres/data:/var/lib/postgresql/data
volumes:
nexus-data: {}
在文件中
docker.service
我添加了:
DOCKER_OPTS=”$DOCKER_OPTS –insecure-registry=192.168.200.150:8083″
在 Nexus 3 中,我使用 http 端口创建了存储库:
8083
和 https:8123
。
当我尝试通过命令登录时
docker login -u admin 192.168.200.150:8083
或
8123
并输入正确的 Nexus 管理员密码:
Error response from daemon: Get https://192.168.200.150:8083/v2/: dial tcp 192.168.200.150:8083: getskopt: connection refused.
或
Error response from daemon: Get https://192.168.200.150:8083/v2/: http: server gave HTTP response to HTTPS client
你知道我该怎么做吗?我坚持下去:/ 我正在使用CentOslinux
您只需在使用此命令运行容器之前公开您选择的端口:
docker run -d -p 8081:8081 -p 8082:8082 --name nexus sonatype/nexus3
第一个端口(
8081
)用于连接本身,第二个端口(8082
)用于配置中的http连接器。
就是这样!
几天前我自己也遇到了这个问题。如果您查看 Docker Nexus 3 日志,您应该会发现它由于某些原因无法分配给定端口(或者至少在我的情况下)。我解决这个问题的方法是查看 Nexus 文档并编辑 jetty-https.xml、nexus.properties 和 org.sonatype.nexus.cfg 为 https://support.sonatype.com/hc/en- us/articles/217542177 和 https://support.sonatype.com/hc/en-us/articles/231723267-How-to-Upgrade-Nexus-Repository-Manager-3-0-2-to-3- 1-0 或之后
将nexus安装为容器
docker run -u root -d -p 8081:8081 -p 8083:8083 --name nexus -v $(pwd)/nexus-data:/nexus-data sonatype/nexus3
开放安全组8081和8083中的端口
在docker主机上添加不安全的存储库
$ sudo vi /etc/docker/daemon.json
{ “不安全的注册表”:[“
host
:8083”]
}
重新启动 docker 守护进程。 $ sudo 服务 docker restart
docker登录-u admin -p ******
host
:8083
docker 标签 hat-app:v2
host
:8083/chat-app:v2
docker推送
host
:8083/chat-app:v2