GVKun编程网logo

1. 使用 Docker 安装 Kong(docker安装confluence)

10

对于1.使用Docker安装Kong感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解docker安装confluence,并且为您提供关于167dockerdocker构建nginx容器系列

对于1. 使用 Docker 安装 Kong感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解docker安装confluence,并且为您提供关于167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo、centos7+docker 安装和部署 crawlab 分布式爬虫平台,并使用 docker-compose 管理 docker、Docker (error getsockopt: connection refused ,使用 http 无法使用 docker login 登录的问题)、Docker for mac 安装 kong的宝贵知识。

本文目录一览:

1. 使用 Docker 安装 Kong(docker安装confluence)

1. 使用 Docker 安装 Kong(docker安装confluence)

  1. Create a Docker network

    $ docker network create kong-net
    
  2. Start Database

     $ docker run -d --name kong-database \
                   --network=kong-net \
                   -p 5432:5432 \
                   -e "POSTGRES_USER=kong" \
                   -e "POSTGRES_DB=kong" \
                   postgres:9.6
    
  3. Prepare Database

    $ docker run --rm \
         --network=kong-net \
         -e "KONG_DATABASE=postgres" \
         -e "KONG_PG_HOST=kong-database" \
         -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
         kong:0.14-centos kong migrations up
    

    现在 kong-dashbord 只支持到 0.14, 所以我这里使用 0.14 的 Kong 镜像。

  4. Start Kong

    $ docker run -d --name kong \
         --network=kong-net \
         -e "KONG_DATABASE=postgres" \
         -e "KONG_PG_HOST=kong-database" \
         -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
         -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \
         -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \
         -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \
         -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \
         -e "KONG_ADMIN_LISTEN=0.0.0.0:8001, 0.0.0.0:8444 ssl" \
         -p 8000:8000 \
         -p 8443:8443 \
         -p 8001:8001 \
         -p 8444:8444 \
         kong:0.14-centos
    
  5. Start Kong DashBord

    $ docker run --rm -p 8080:8080 --network kong-net -d --name kong-dashboard pgbi/kong-dashboard start --kong-url http://kong:8001
    
  6. Over

    现在你应该能在系统中看到 Kong 的三个镜像了。

167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo

167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo

docker构建nginx容器系列问题


background : 最近为小伙伴们筹划docker系列的技术分享,研究了一会docker相关技术, 在此记录一下构建nginx容器时候的坑

1.nginx服务器根目录问题

docker 官方镜像提供的nginx基于debian/jessie平台,其文件结构和ubuntu中的nginx中并不相同

eg:

run一个niginx容器

<span>//80端口被占用,so...</span>
$ sudo docker run <span>-it</span><span>-p</span><span>800</span>:<span>800</span> nginx
$ sudo docker ps 

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                   NAMES
<span>1801</span>a32aab54        nginx               <span>"nginx -g ''daemon off"</span><span>2</span> minutes ago       Up <span>2</span> minutes        <span>80</span>/tcp, <span>443</span>/tcp, <span>0.0</span><span>.0</span><span>.0</span>:<span>800</span><span>-&gt;</span><span>800</span>/tcp   berserk_kare
登录后复制

进入容器内部

<span>$ </span>sudo docker exec -it <span>1801</span>a32aab54 /bin/bash
root<span>@1801a32aab54</span><span>:/</span><span># </span>
登录后复制

查看nginx目录

<span># cd /etc/nginx/</span>
conf<span>.d</span>/         koi-utf         mime<span>.types</span>      nginx<span>.conf</span>      uwsgi_params    
fastcgi_params  koi-win         modules/        scgi_params     win-utf  
登录后复制

可以看到不仅没有熟悉的 /sites-available,也没有 /sites-enabled

继续查看nginx配置

<span># cat /conf.d/default.conf</span><span>server</span> {
    listen       <span>80</span>;
    server_name  localhost;

    <span>#charset koi8-r;</span><span>#access_log  /var/log/nginx/log/host.access.log  main;</span>    location / {
        root   /usr/share/nginx/html;
        <span>index</span><span>index</span>.html <span>index</span>.htm;
    }

    <span>#error_page  404              /404.html;</span><span># redirect server error pages to the static page /50x.html</span><span>#</span>
    error_page   <span>500</span><span>502</span><span>503</span><span>504</span>  /<span>50</span>x.html;
    location = /<span>50</span>x.html {
        root   /usr/share/nginx/html;
    }
    <span>#...省略php-fpm配置,好长..</span>
}
登录后复制

根目录配置: root /usr/share/nginx/html;

测试

<span># cd /usr/share/nginx/html</span><span># touch index.html</span><span># echo "test nginx in docker" &gt;index.html</span>
登录后复制

php-fpm配置相关

'').addClass(''pre-numbering'').hide(); $(this).addClass(''has-numbering'').parent().append($numbering); for (i = 1; i '').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了167 docker docker构建nginx容器系列问题,包括了docker,nginx方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

centos7+docker 安装和部署 crawlab 分布式爬虫平台,并使用 docker-compose 管理 docker

centos7+docker 安装和部署 crawlab 分布式爬虫平台,并使用 docker-compose 管理 docker

1. 先决条件 centos7+docker 最新版本

 sudo yum updat

2. 配置一下镜像源,创建 /etc/docker/daemon.conf 文件,在其中输入如下内容

{
 "registry-mirrors": ["https://registry.docker-cn.com"]
}

3. 启动 docker 命令:

systemctl start docker 

重启 docker 服务:

service docker restart

4. 查看和下载 Crawlab 的镜像命令 :

docker search crawlab                   #(查找Crawlab镜像)
docker pull tikazyq/crawlab:latest       #(下载Crawlab镜像)

5. 创建 docker 组:

sudo groupadd docker    (删除docker这个用户:userdel -r docker)

6.centos7 查看所有用户:

cut -d : -f 1 /etc/group

7. 将您的用户添加到该 docker 用户组,命令:

sudo usermod -aG docker 用户名

8. 查看 “docker” 组下的所有用户,命令:

  grep ''docker'' /etc/group

9.Docker Compose 安装

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

稍等片刻,有点慢!!!!

赋权:

sudo chmod +x /usr/local/bin/docker-compose

查看版本:

docker-compose --version

10. 查找 docker-compose.yml 文件位置:

find / -name "docker-compose.yml*"

(会出现 find: ‘/run/user/1000/gvfs’: 权限不够,执行:umount /run/user/1000/gvfsrm -rf /run/user/1000/gvfs, 再执行就不会出错了!!!

11. 图中:

/var/lib/docker/overlay2/50df4de9bf340501cade27650953ad983948b10e13bbe931710ef090ab1a4602/diff/app/docker-compose.yml-----------是我的路径

cd 到 app 目录就可以了

vim docker-compose.yml   #编辑

注意: 新版镜像的 CRAWLAB_API_ADDRESS 是这样的: CRAWLAB_API_ADDRESS: "http://192.168.157.128:8000"

12. 启动 Crawlab

​ cd 进入到 docker-compose.yml 所在文件目录下

​ 才能运行:docker-compose up 集群启动容器,否则找不到文件

查看 woker 容器日志命令:docker-compose logs worker

正常会启动四个容器:master、woker、redis、mongo

第一次次启动会下载安装并配置节点和数据库(redis 和 mongodb)

img

13.Crawlab

浏览器访问 :http://ip:8080 用户名密码是 admin/admin

第一次访问没问题,但是第二次启动会报各种错,博主正在研究中 ----- 持续更新中!!!

Docker (error getsockopt: connection refused ,使用 http 无法使用 docker login 登录的问题)

Docker (error getsockopt: connection refused ,使用 http 无法使用 docker login 登录的问题)

因部署 Harbor 镜像仓库,部署完了之后根据提示上传 images,需要使用 docker  login   ip:port  进行登录,

登录的时候发现因为 docker 默认是 https,因为测试环境就没有配置证书,所以必须添加非安全的 registry,

下面就是开始在各种找教程。。。。解决方法试了 N 种都不行

总结为以下几点

1、 vim /etc/docker/daemon.json
[root@ymedy-china docker]# cat /etc/docker/daemon.json
{
"insecure-registries":["192.168.10.110:80"]
}

 

还是不行

[root@ymedy-china docker]# docker login 192.168.10.110
Username (admin): admin
Password: 
Error response from daemon: Get https://192.168.10.110/v1/users/: dial tcp 192.168.10.110:443: getsockopt: connection refused
2、 vim /usr/lib/systemd/system/docker.service 可用
增加  --insecure-registry 192.168.10.110
[Service]
Type=notify
NotifyAccess=main
EnvironmentFile=-/run/containers/registries.conf
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
Environment=DOCKER_HTTP_HOST_COMPAT=1
Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current --insecure-registry 192.168.10.110  \
          --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
          --default-runtime=docker-runc \
          --exec-opt native.cgroupdriver=systemd \
          --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
          --init-path=/usr/libexec/docker/docker-init-current \
          --seccomp-profile=/etc/docker/seccomp.json \
          $OPTIONS \
          $DOCKER_STORAGE_OPTIONS \
          $DOCKER_NETWORK_OPTIONS \
          $ADD_REGISTRY \
          $BLOCK_REGISTRY \
          $INSECURE_REGISTRY \
          $REGISTRIES
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
LimitNPROC=1048576
"/usr/lib/systemd/system/docker.service" 41L, 1344C written

 

可用

[root@ymedy-china docker]# docker login 192.168.10.110
Username (admin): admin
Password: 
Login Succeeded

 


3、 vim   /etc/sysconfig/docker  可用

OPTIONS=''--selinux-enabled --log-driver=journald --signature-verification=false --insecure-registry=192.168.10.110''

可用

[root@ymedy-china docker]# docker login 192.168.10.110
Username (admin): 
Password: 
Login Succeeded

 

4、 rm -rf /var/lib/docker ( 写这个博客的作者心思太坏,这个命令会删除你的所有容器和镜像!!!!!)
 
小结:网上搜索资料在输入命令或者更改配置之前,需要大概了解一下相关命令,不要轻易删除文件,如果实在要删除也要备份后在删除,避免不必要的损失,可以多看看评论。

Docker for mac 安装 kong

Docker for mac 安装 kong

首先安装一个 PostgreSQL,选的版本是 9.5

$ docker run -d --name kong-database \
              -p 5432:5432 \
              -e "POSTGRES_USER=kong" \
              -e "POSTGRES_DB=kong" \
              postgres:9.5

然后初始化数据库,记住后面跟的 kong:0.12 要跟你要安装的 kong 镜像名称保持一致

$ docker run --rm \
    --link kong-database:kong-database \
    -e "KONG_DATABASE=postgres" \
    -e "KONG_PG_HOST=kong-database" \
    -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
    kong:0.12 kong migrations up

启动 kong

$ docker run -d --name kong \
    --link kong-database:kong-database \
    -e "KONG_DATABASE=postgres" \
    -e "KONG_PG_HOST=kong-database" \
    -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
    -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \
    -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \
    -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \
    -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \
    -e "KONG_ADMIN_LISTEN=0.0.0.0:8001" \
    -e "KONG_ADMIN_LISTEN_SSL=0.0.0.0:8444" \
    -p 8000:8000 \
    -p 8443:8443 \
    -p 8001:8001 \
    -p 8444:8444 \
    kong:0.12

完成之后 curl 一下看看有没有启动成功

curl http://localhost:8001

 

然后再来安装 kong-dashboard,这个地方有个坑,之前 kong 是安装的0.13版本的,kong-dashboard是下的 v3 版本的,v3 只支持 kong 0.13 以下版本的

docker run -d -p 8080:8080 --link kong:kong \
     pgbi/kong-dashboard:v3.2.0 start \
  --kong-url http://kong:8001 \
  --basic-auth user1=password1 user2=password2

安装 OK 之后在浏览器中输入 http://127.0.0.1:8080/ 访问,初始的密码就是我们刚刚设置的 user1 和 password1

 

关于1. 使用 Docker 安装 Kongdocker安装confluence的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo、centos7+docker 安装和部署 crawlab 分布式爬虫平台,并使用 docker-compose 管理 docker、Docker (error getsockopt: connection refused ,使用 http 无法使用 docker login 登录的问题)、Docker for mac 安装 kong的相关知识,请在本站寻找。

本文标签: