Git Product home page Git Product logo

Comments (3)

janmattfeld avatar janmattfeld commented on May 29, 2024

Indeed dockerlint is broken, I created a separate issue #3.

From your log I suspect you are using macOS? Docker privileged mode might not be fully supported, that's why the kuryr setup fails. I don't own a Mac so I cannot verify that.

You could try to exclude the following projects from Dockerfile and local.conf

  • zun
  • zun-ui
  • kuryr-libnetwork
  • devstack-plugin-container

from dockstack.

brtkwr avatar brtkwr commented on May 29, 2024

Thanks, it is a MacOS High Sierra that I have. I tried your suggestion and at first glance, it appears to be successful. This is the output of my make run log. However, notice the ERROR: Not authorized at the end of the log when a new container is being created:

docker exec \
		--tty \
		--interactive \
		dockstack \
		bash -c "su stack -c '\
			source /devstack/openrc admin admin && \
			zun run --name test cirros ping -c 4 8.8.8.8 \
		'"
WARNING: setting legacy OS_TENANT_NAME to support cli tools.
ERROR: Not authorized

Is it not authorized because zun installation has been excluded?

Adding a debug tag results in the following:

stack@fec615e1447c:/devstack$ zun --debug run --name test cirros ping -c 4 8.8.8.8 
DEBUG (extension:189) found extension EntryPoint.parse('vitrage-keycloak = vitrageclient.auth:VitrageKeycloakLoader')
DEBUG (extension:189) found extension EntryPoint.parse('vitrage-noauth = vitrageclient.auth:VitrageNoAuthLoader')
DEBUG (extension:189) found extension EntryPoint.parse('v1password = swiftclient.authv1:PasswordLoader')
DEBUG (extension:189) found extension EntryPoint.parse('token_endpoint = openstackclient.api.auth_plugin:TokenEndpoint')
DEBUG (extension:189) found extension EntryPoint.parse('noauth = cinderclient.contrib.noauth:CinderNoAuthLoader')
DEBUG (extension:189) found extension EntryPoint.parse('v2token = keystoneauth1.loading._plugins.identity.v2:Token')
DEBUG (extension:189) found extension EntryPoint.parse('none = keystoneauth1.loading._plugins.noauth:NoAuth')
DEBUG (extension:189) found extension EntryPoint.parse('v3oauth1 = keystoneauth1.extras.oauth1._loading:V3OAuth1')
DEBUG (extension:189) found extension EntryPoint.parse('admin_token = keystoneauth1.loading._plugins.admin_token:AdminToken')
DEBUG (extension:189) found extension EntryPoint.parse('v3oidcauthcode = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectAuthorizationCode')
DEBUG (extension:189) found extension EntryPoint.parse('v2password = keystoneauth1.loading._plugins.identity.v2:Password')
DEBUG (extension:189) found extension EntryPoint.parse('v3samlpassword = keystoneauth1.extras._saml2._loading:Saml2Password')
DEBUG (extension:189) found extension EntryPoint.parse('v3password = keystoneauth1.loading._plugins.identity.v3:Password')
DEBUG (extension:189) found extension EntryPoint.parse('v3adfspassword = keystoneauth1.extras._saml2._loading:ADFSPassword')
DEBUG (extension:189) found extension EntryPoint.parse('v3oidcaccesstoken = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectAccessToken')
DEBUG (extension:189) found extension EntryPoint.parse('v3oidcpassword = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectPassword')
DEBUG (extension:189) found extension EntryPoint.parse('v3kerberos = keystoneauth1.extras.kerberos._loading:Kerberos')
DEBUG (extension:189) found extension EntryPoint.parse('token = keystoneauth1.loading._plugins.identity.generic:Token')
DEBUG (extension:189) found extension EntryPoint.parse('v3oidcclientcredentials = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectClientCredentials')
DEBUG (extension:189) found extension EntryPoint.parse('v3tokenlessauth = keystoneauth1.loading._plugins.identity.v3:TokenlessAuth')
DEBUG (extension:189) found extension EntryPoint.parse('v3token = keystoneauth1.loading._plugins.identity.v3:Token')
DEBUG (extension:189) found extension EntryPoint.parse('v3totp = keystoneauth1.loading._plugins.identity.v3:TOTP')
DEBUG (extension:189) found extension EntryPoint.parse('v3applicationcredential = keystoneauth1.loading._plugins.identity.v3:ApplicationCredential')
DEBUG (extension:189) found extension EntryPoint.parse('password = keystoneauth1.loading._plugins.identity.generic:Password')
DEBUG (extension:189) found extension EntryPoint.parse('v3fedkerb = keystoneauth1.extras.kerberos._loading:MappedKerberos')
DEBUG (extension:189) found extension EntryPoint.parse('gnocchi-basic = gnocchiclient.auth:GnocchiBasicLoader')
DEBUG (extension:189) found extension EntryPoint.parse('gnocchi-noauth = gnocchiclient.auth:GnocchiNoAuthLoader')
DEBUG (extension:189) found extension EntryPoint.parse('aodh-noauth = aodhclient.noauth:AodhNoAuthLoader')
DEBUG (session:372) REQ: curl -g -i -X GET http://172.17.0.2/identity -H "Accept: application/json" -H "User-Agent: zun keystoneauth1/3.4.0 python-requests/2.18.4 CPython/2.7.12"
DEBUG (connectionpool:208) Starting new HTTP connection (1): 172.17.0.2
DEBUG (connectionpool:396) http://172.17.0.2:80 "GET /identity HTTP/1.1" 300 269
DEBUG (session:419) RESP: [300] Date: Sun, 11 Feb 2018 22:36:07 GMT Server: Apache/2.4.18 (Ubuntu) Vary: X-Auth-Token Content-Type: application/json Content-Length: 269 Connection: close 
RESP BODY: {"versions": {"values": [{"status": "stable", "updated": "2018-02-28T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.10", "links": [{"href": "http://172.17.0.2/identity/v3/", "rel": "self"}]}]}}

DEBUG (base:175) Making authentication request to http://172.17.0.2/identity/v3/auth/tokens
DEBUG (connectionpool:243) Resetting dropped connection: 172.17.0.2
DEBUG (connectionpool:396) http://172.17.0.2:80 "POST /identity/v3/auth/tokens HTTP/1.1" 201 2234
DEBUG (base:180) {"token": {"is_domain": false, "methods": ["password"], "roles": [{"id": "31e4d36f75bf420090032e194bade465", "name": "admin"}], "expires_at": "2018-02-11T23:36:07.000000Z", "project": {"domain": {"id": "default", "name": "Default"}, "id": "07f840d164234de3bbb88e09271784e0", "name": "admin"}, "catalog": [{"endpoints": [{"url": "http://172.17.0.2/image", "interface": "public", "region": "RegionOne", "region_id": "RegionOne", "id": "2dbf2d65902241f19c9d1823b1a03576"}], "type": "image", "id": "279485b0586b485684ca2e45b7fb5c54", "name": "glance"}, {"endpoints": [{"url": "http://172.17.0.2/placement", "interface": "public", "region": "RegionOne", "region_id": "RegionOne", "id": "5f8f484e7f9e47859142a96fb298b04a"}], "type": "placement", "id": "3e0f59645eb0412a925c2a583264fb82", "name": "placement"}, {"endpoints": [{"url": "http://172.17.0.2/compute/v2.1", "interface": "public", "region": "RegionOne", "region_id": "RegionOne", "id": "3cd1e2a9d50a4ba08c55215a85af6735"}], "type": "compute", "id": "554fbfdbb4ac456d9f152fc2b71f347d", "name": "nova"}, {"endpoints": [{"url": "http://172.17.0.2/compute/v2/07f840d164234de3bbb88e09271784e0", "interface": "public", "region": "RegionOne", "region_id": "RegionOne", "id": "9efde85ee57e4622917d6645e2680b19"}], "type": "compute_legacy", "id": "8149951a620148f185472e776372be63", "name": "nova_legacy"}, {"endpoints": [{"url": "http://172.17.0.2:9696/", "interface": "public", "region": "RegionOne", "region_id": "RegionOne", "id": "0d207b1dfe384e389c36270b838be41f"}], "type": "network", "id": "bb95f001c2554ed88da8eb5ae9b54982", "name": "neutron"}, {"endpoints": [{"url": "http://172.17.0.2/identity", "interface": "public", "region": "RegionOne", "region_id": "RegionOne", "id": "1e8e08f9103e4ac79625ade23e68c302"}, {"url": "http://172.17.0.2/identity", "interface": "admin", "region": "RegionOne", "region_id": "RegionOne", "id": "455fbd573d8c4b9ebbceb438124ffa50"}], "type": "identity", "id": "fd447b6bede14f1bb53f0ce48f43dbb3", "name": "keystone"}], "user": {"domain": {"id": "default", "name": "Default"}, "password_expires_at": null, "name": "admin", "id": "2f10139229e042dea3daf8109b4d3036"}, "audit_ids": ["uFNaR4meQGOHgQzf2374Wg"], "issued_at": "2018-02-11T22:36:07.000000Z"}}
DEBUG (shell:717) Not authorized
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/zunclient/shell.py", line 715, in main
    map(encodeutils.safe_decode, sys.argv[1:]))
  File "/usr/local/lib/python2.7/dist-packages/zunclient/shell.py", line 650, in main
    **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/zunclient/client.py", line 100, in Client
    **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/zunclient/v1/client.py", line 112, in __init__
    raise RuntimeError('Not authorized')
RuntimeError: Not authorized
ERROR: Not authorized

The reason this is interesting is because when I log into horizon dashboard and try to create a new container, it is stuck on scheduling and nothing happens effectively! I think this failure to authorize may have something to do with it but I am not familiar enough with the system to work out how to start debugging the issue.

Perhaps I should give up trying to make this work from within a docker container as it is clearly not the intended use case. I should install this on an Ubuntu installation rather than trying to make it work inside a docker container which I assumed was able to replicate the same processes across platforms and that assumption clearly appears to be wrong!

from dockstack.

janmattfeld avatar janmattfeld commented on May 29, 2024

As you excluded Zun (the container management plugin), that's not surprising. However, you should be able to create regular compute nodes (VMs) and anything else inside your DockStack.

To be fair, I never stated platform portability was a goal of this project. In fact, I list a recent Ubuntu as requirement. Even without DockStack, getting an Ubuntu machine is a good idea–as recommended in the OpenStack development docs.

Good luck!

from dockstack.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.