1.首先安装docker
2.安装Nexus3
拉取nexus3镜像 docker pull sonatype/nexus3
启动nexus3: docker run -d --name nexus3 --restart=always -p 8081:8081 -p 5000:5000 -v /data/nexus-data:/nexus-data sonatype/nexus3
-d:以后台的方式启动
–name:创建容器的名称
–restart: docker重启时重启容器
-p: 第一个是:web见面访问时的端口. 第二个是推拉镜像时的端口
-v: 将容器中的文件夹映射到宿主机中
安装的时候查看docker logs nexus3
日志可能有错误显示有异常。需要用命令chmod 777 /data/nexus-data
赋予最高权限
3.启动Nexus3
访问ip:8081进行登录。默认用户名admin。默认密码在宿主机的/data/nexus-data文件夹中有一个admin.password文件,里面是第一次登录的密码。点击登录之后会提示修改密码
4.docker 推拉镜像
新建一个本地私服
新建完毕之后需要新建一个角色和用户
新增角色
新增用户
现在用户角色和相关私库都新建完毕。返回到centos中
使用命令docker login -u 刚才新建的用户名 -p 新建时的密码 ip:5000
正常情况会提示错误https错误。需要修改/etc/docker/daemon.json文件(如果不存在就新建一个)
在里面加入
{"insecure-registries": ["http://ip:5000"]}
重启加载文件: systemctl daemon.json
重启docker:systemctl restart docker
如果提示重启失败,通过systemctl status docker
查看状态出现错误
docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: failed (Result: start-limit) since Thu 2020-12-03 13:44:11 CST; 18s ago
Docs: https://docs.docker.com
Process: 23949 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
Main PID: 23949 (code=exited, status=1/FAILURE)
Dec 03 13:44:09 VM_0_9_centos systemd[1]: Failed to start Docker Application Container Engine.
Dec 03 13:44:09 VM_0_9_centos systemd[1]: Unit docker.service entered failed state.
Dec 03 13:44:09 VM_0_9_centos systemd[1]: docker.service failed.
Dec 03 13:44:11 VM_0_9_centos systemd[1]: docker.service holdoff time over, scheduling restart.
Dec 03 13:44:11 VM_0_9_centos systemd[1]: start request repeated too quickly for docker.service
这种情况一般都是daemon.json文件有错误。里面可能复制了其他的符号什么。需要修改
再执行命令 docker login -u 刚才新建的用户名 -p 新建时的密码 ip:5000。
首先推一个镜像到私服上去
给镜像一个标签:docker tag java:8 ip:5000/java8:v1
输入命令推送: docker push ip:5000/java8:v1 刚才打的标签的镜像
推送完毕之后再刚才新建的私库中可以看到