文章目录
- docker安装
- nexus安装
- Nexus配置
- 遇到的问题
- 容器时区不对
- Outreach地址无法访问
docker安装
更新包管理器
yum update
安装必要依赖
yum install -y yum-utils device-mapper-persistent-data lvm2
设置稳定的仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker时,出现了一下报错信息(在阿里云服务器上):
Error: Failed to download metadata for repo ‘docker-ce-stable’: Cannot
download repomd.xml: Cannot download repodata/repomd.xml: All mirrors
were triedError: Failed to download metadata for repo
‘docker-ce-stable’: Cannot download repomd.xml: Cannot download
repodata/repomd.xml: All mirrors were tried
解决方案:
进入/etc/yum.repos.d目录修改docker-ce.repo($releasever->7)
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
列出docker可用版本
yum list docker-ce --showduplicates | sort -r
安装
yum install docker-ce
查看docker
docker version
启动docker
systemctl start docker
设置开机启动
systemctl enable docker
配置阿里云镜像加速
echo -e '{\n\t"registry-mirrors": ["https://cr.console.aliyun.com/"]\n}' > /etc/docker/daemon.json
重启应用镜像加速
sudo systemctl daemon-reload
sudo systemctl restart docker
nexus安装
查找镜像
docker search nexus
拉取镜像
docker pull sonatype/nexus3
查看镜像
docker images
创建nexus数据目录并授权
mkdir -p /home/nexus/nexus-data
chown 200 /home/nexus/nexus-data
创建并启动容器
将服务映射到了宿主机8088,将宿主机/home/nexus/nexus-data目录映射到容器/nexus-data目录
docker run -d -p 8088:8081 --name nexus --restart=always -v /home/nexus/nexus-data:/nexus-data sonatype/nexus3
查看容器
docker ps -a
如果容器成功启动就可以进入nexus后台了,访问如下网址(替换ip)
http://ip:8088
登录nexus
从3.17版本开始默认密码不再是admin123,密码是随机生成。首次登录页面会显示admin用户的密码在/nexus-data/admin.password,因为我们在创建容器时做了目录映射,所以进入宿主机查看密码。
cat /home/nexus/nexus-data/admin.password
得到的字符串即为密码,用户名为admin
如果容器启动失败可以查看log
docker logs -f nexus
Nexus配置
这个暂时懒着整理了
关于登录后的一系列操作可参阅几篇博文
https://zhang.ge/5139.html
https://www.jianshu.com/p/77af52a75ad8
遇到的问题
容器时区不对
我在查看日志时发现log里边打印的时间不对,这是因为官方镜像时区和我的时区不同
修改时区
以root用户登录docker容器
docker exec -it -u root <容器id> /bin/bash
如果是CentOS镜像
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
如果是Ubuntu镜像(我是CentOS所以该方法没验)
echo "Asia/Shanghai" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata
重启log时间正常了
Outreach地址无法访问
登录后台页面之后报了一个错误如下:
*UNKNOWN com.sonatype.nexus.plugins.outreach.internal.outreach.SonatypeOutreach - Could not download page bundle
org.apache.http.conn.ConnectTimeoutException: Connect to sonatype-download.global.ssl.fastly.net:443 [sonatype-download.global.ssl.fastly.net/31.13.64.49] failed: connect timed out
报该错误的原因是nexus的欢迎页面会从Sonatype重定向一些信息进行显示,这个功能叫做Outreach,他的地址是国外的连不上。所以你会发现你的欢迎页面是空荡荡的,什么都没有。为了避免周期性的报错,可以把Outreach禁用。
1.以管理员登录
2.打开Administration -> System -> Capabilities。选择 Outreach Management 功能。
3.点击Disable按钮。修改会立马生效。