docker 登录 Nexus 连接被拒绝

问题描述 投票:0回答:4

我已经设置了我的 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 centos docker-compose nexus3
4个回答
4
投票

您只需在使用此命令运行容器之前公开您选择的端口:

docker run -d -p 8081:8081 -p 8082:8082 --name nexus sonatype/nexus3

第一个端口(

8081
)用于连接本身,第二个端口(
8082
)用于配置中的http连接器。

就是这样!


2
投票

对于 http,编辑 docker 注册表,标记“在指定端口创建 HTTP 连接器。通常在服务器位于安全代理后面时使用”。 将端口设置为8083,就完成了


1
投票

几天前我自己也遇到了这个问题。如果您查看 Docker Nexus 3 日志,您应该会发现它由于某些原因无法分配给定端口(或者至少在我的情况下)。我解决这个问题的方法是查看 Nexus 文档并编辑 jetty-https.xml、nexus.properties 和 org.sonatype.nexus.cfg 为 https://support.sonatype.com/hc/en- us/articles/217542177https://support.sonatype.com/hc/en-us/articles/231723267-How-to-Upgrade-Nexus-Repository-Manager-3-0-2-to-3- 1-0 或之后


0
投票

将nexus安装为容器

  1. docker run -u root -d -p 8081:8081 -p 8083:8083 --name nexus -v $(pwd)/nexus-data:/nexus-data sonatype/nexus3

  2. 开放安全组8081和8083中的端口

  3. 在docker主机上添加不安全的存储库

  4. $ sudo vi /etc/docker/daemon.json

    { “不安全的注册表”:[“

    host
    :8083”] }

  5. 重新启动 docker 守护进程。 $ sudo 服务 docker restart

  6. docker登录-u admin -p ******

    host
    :8083

  7. docker 标签 hat-app:v2

    host
    :8083/chat-app:v2

  8. docker推送

    host
    :8083/chat-app:v2

© www.soinside.com 2019 - 2024. All rights reserved.