Machine 1
디스크가 많은 시스템
Docker 에 Block 장치를 직접 Bypass 하여 사용하도록 할 예정
Nexus3 or Harbor Registry 구축
Machine 2
Ceph 의 오브젝트 Storage의 활용
대안: NFS 서버를 사용
Vagrant.configure("2") do |config|
config.vm.provider "virtualbox" do |vb|
vb.memory = 2048
vb.cpus = 2
end
config.vm.provision "shell", path: "init.sh"
config.vm.define "storage" do |storage|
storage.vm.hostname = "storage.local"
storage.vm.network "forwarded_port", guest: 8443, host: 8443
storage.vm.network "private_network", ip: "192.168.34.101"
storage.vm.disk :disk, name: "ceph", size: "32GB"
storage.vm.provision "file", source: "./ceph.docker-compose.yml", destination: "~/docker-compose.yml"
end
config.vm.define "registry" do |registry|
registry.vm.hostname = "registry.local"
registry.vm.network "forwarded_port", guest: 8081, host: 8081
registry.vm.network "private_network", ip: "192.168.34.102"
registry.vm.provision "file", source: "./nexus.docker-compose.yml", destination: "~/docker-compose.yml"
end
config.vm.define "service" do |service|
service.vm.hostname = "service.local"
service.vm.network "forwarded_port", guest: 8080, host: 8080
service.vm.network "private_network", ip: "192.168.34.103"
end
end
docker run -d -p 8081:8081 -p 5000-5001:5000 --name nexus -e INSTALL4J_ADD_VM_PARAMS="-Xms1024m -Xmx1024m -XX:MaxDirectMemorySize=512m" -v nexus-data:/nexus-data sonatype/nexus3
1) daemon.json 설정
2) push 하고싶은 이미지를 docker tag 해주기
==> docker tag taewoo/djangotest:1.0 192.168.34.102:5001/myimg/django:example
3) docker push 192.168.34.102:5001/myimg/django:example