實現目標
docker 執行nexus
nexus docker倉庫支援https
docker client只需要把ca證書放到docker目錄下,不需要整個機器信任。
nexus用 ip:port的方式訪問
# 這裡的ip換為nexus執行機器的ip
echo subjectaltname = ip:10.110.25.191 > extfile.cnf
# 生成ca
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -key ca.key -days 5000 -out ca.crt
# 生成server證書
openssl genrsa -out server.key 2048
openssl req -new -key server.key -subj "/cn=10.110.25.191" -out server.csr
openssl x509 -req -in server.csr -ca ca.crt -cakey ca.key -cacreateserial -extfile extfile.cnf -out server.crt -days 5000
# 將證書匯出成pkcs格式
openssl pkcs12 -export -out keystore.pkcs12 -inkey server.key -in server.crt
from sonatype/nexus3
user root
copy keystore.pkcs12 /keystore.pkcs12
run keytool -v -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -storepass password -srcstorepass password &&\
cp keystore.jks /opt/sonatype/nexus/etc/ssl/
user nexus
docker build ./ -t nexus-https
# 8443是nexus ui https訪問埠
# 8081是nexus ui http訪問埠
# 8082將要用來作為docker**docker hub的埠
# 8083將要用來作為docker本地倉庫的埠
# 修改nexus的目錄許可權
chmod -r 777 /docker
# 等容器啟動,可以正常訪問頁面之後修改配置檔案,開啟ssl
vim /docker/nexus/nexus-data/etc/nexus.properties
# 內容如下:
# 重啟容器
docker restart nexus3
設定realms
在realms中把 docker bearer token realm 選為 active
建立docker的**倉庫,**docker hub
設定 -> repositories -> create repositories -> docker(proxy)
把https的選項選上,埠號填寫8082,docker index 選擇docker hub,其他的按照預設填寫
client訪問
在client端的伺服器上建立/etc/docker/certs.d/:8082/
資料夾。
將生成ca證書步驟生成的 ca.crt複製到 這個資料夾中。
docker login 試一下。
docker安裝postgresql並啟動服務
第一步 搜尋映象 docker search postgres第二步 拉取映象 docker pull postgres第三步 啟動服務 docker run name postgresql e postgres password password p 54321 5432 d postgres引數...
Docker方式部署nexus3 OSS
環境準備 centos 7.4 docker ce,docker的安裝方式就不說了 步驟 1.建立nexus的持久化目錄 mkdir p data nexus data chown r 200 data nexus data2.將服務檔案新增到systemd中,這些就可以隨系統一起啟動了 vi et...
jenkins自動部署思路,docker啟動
一,宿主機安裝docker,啟動jenkins容器,tomcat容器 免去部署環境,方便,但是需要比較複雜 1,首先安裝docker,啟動官方的jenkins容器。可以自己手動建立喜歡的映象 2,啟動jenkins命令 docker run d u root p v usr bin docker u...