Ubuntu18.04上安装Docker,,并运行swagger

利用了阿里云的 " Docker CE " 镜像源站进行安装。安装命令如下:

   # step 1: 安装必要的系统工具
    sudo apt-get update
    sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
     
    # step 2: 安装GPG证书
    curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
     
    # Step 3: 写入软件源信息
    sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
     
    # Step 4: 更新并安装Docker-CE
    sudo apt-get -y update
    sudo apt-get -y install docker-ce

测试 docker 是否安装成功,并运行 hello-world:

sudo docker run hello-world

若看到以下内容,则证明安装成功:

Hello from Docker! This message shows that your installation appears
to be working correctly. To generate this message, Docker took the
following steps:

  1. The Docker client contacted the Docker daemon.
  2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
    (amd64)
  3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
  4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share
    images, automate workflows, and more with a free Docker ID:
    https://hub.docker.com/ For more examples and ideas, visit:
    https://docs.docker.com/get-started/
    基础命令如下:
# Step 5: 检查docker的版本
docker -version

# Step 6: 启动docker
sudo systemctl start docker

# Step 7: 检查docker启动状态
sudo systemctl status docker

Swagger-editor and Swagger-ui in Docker :

# Step 1: 下载swagger-editor的容器
docker pull swaggerapi/swagger-editor 
docker run -d -p 80:8080 swaggerapi/swagger-editor 

这里将容器的 8080 端口暴露给 localhost 的 80端口,在浏览中输入:localhost:80,就可以在容器中编辑api文档,这里很容易出现端口占用问题:

报错:
  docker: Error response from daemon: driver failed programming external connectivity on endpoint romantic_wing (d5fd42844e1838b26c123b002b6c0f5f3aaadcd7e8e8ff922cb2c23c33891bf4): Bind for 0.0.0.0:80 failed: port is already allocated.
 
使用: netstat -lnp|grep 80 命令检查端口是否被占用,并结束相应进程

# Step 9: 下载swagger-ui的容器
docker pull swaggerapi/swagger-ui 

json文件挂在到容器中

	docker run -p 80:8080 -e SWAGGER_JSON=/foo/swagger.json -v /var/www/Downloads:/foo swaggerapi/swagger-ui 
  • -e:执行容器中/foo/swagger.json
  • -v:将/Users/fanfan/Downloads中的swagger.json挂在到 /foo中执行

没有将swagger.json
在容器内修改的好处:在外部修改后容器可以直接运行,如果在容器内容修改需要在compile一次生成新的容器,这就复杂了哈

web 验证:http://127.0.0.1:80

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值