Oracle cloud 如何通过Docker发布第一个HelloWorld应用

1,996 阅读2分钟

新建实例

在Oralce Cloud的实例菜单选择创建实例。

create.png 注意选择“符合始终免费条件”的项目。

修改映像为CentOS 8(其他映像的DOCKER安装会有不同)。

添加SSH密钥,用PUTTYGEN生成一对公钥和私钥,将公钥贴在图示输入框中,将私钥保存在本机。

SSH.png

点击图中创建按钮,Oracle cloud开始创建实例,等待....。

新建完毕后,可以在实例列表中看到该实例,状态为正在运行,点击该实例进入详细信息。

修改防火墙策略

建立完的实例,默认是只开放22等三个端口,需要修改防火墙配置,才能通过HTTP访问。

如图,点击详细信息页中的子网。

subnet.png

如图,点击安全列表

securitylist.png

如图,新增入站规则,0.0.0.0/0 TCP 所有源端口,只开放80端口(也可以全开)。

port.png 现在防火墙的80端口就可以访问了。

安装DOCKER

用putty连接上oracle实例 如图,在putty的host name上填写上oracle云实例的公共IP(在实例的详细信息中能找到)。点击左边的SSH下的Auth,找到private key file for authentication,点击brower,选择之前保存到本机的私钥文件,然后点击open。

putty.png

登录账号,Oracle linux和CentOS都是OPC,需要切换到root。

sudo -i

然后可以用passwd,给root加上密码。

passwd

开始安装DOCKER,首先更新系统

sudo dnf -y update
sudo dnf -y install dnf-plugins-core

然后添加docker的存储库

sudo dnf config-manager \
     --add-repo \
     https://download.docker.com/linux/centos/docker-ce.repo

再然后开始安装

sudo dnf -y install docker-ce docker-ce-cli containerd.io

设置开机启动

sudo systemctl enable --now docker

如果想用opc用户操作docker,就将opc用户加入docker组中

sudo usermod -aG docker opc

部署helloworld

在Docker Hub里找一个HTTP的helloworld的镜像。比如hub.docker.com/r/tutum/hel…

找到它的running命令 sudo docker run -d -p 80 tutum/hello-world 将其修改为 sudo docker run -d -p 80:80 tutum/hello-world 因为之前开放的防火墙端口是80。

将该命令在Putty中运行,docker会去docker hub的库里下载并运行。

等全部完成后,就可以在浏览器里输入实例的公共IP地址,回车,效果如下:

result.png