Giter VIP home page Giter VIP logo

Comments (8)

NikiChr avatar NikiChr commented on May 14, 2024 1

I added glide in my dockerfile however I needed to use glide install.
Now I get this error message:

bash-5.0# make devcluster
docker run --rm -it -v :/go -w /go/src/github.com/uber/kraken golang:1.11.4 go build -o ./agent/agent ./agent/
Unable to find image 'golang:1.11.4' locally
1.11.4: Pulling from library/golang
ab1fc7e4bf91: Pull complete 
35fba333ff52: Pull complete 
f0cb1fa13079: Pull complete 
3d1dd648b5ad: Pull complete 
866ed2e2b1fe: Pull complete 
85221581e349: Pull complete 
0b7ee073a53e: Pull complete 
Digest: sha256:4469b68518ffcae4cc1f5310752495c3ed53c039e28f1638b23c21f1fc7a54cf
Status: Downloaded newer image for golang:1.11.4
can't load package: package github.com/uber/kraken/agent: cannot find package "github.com/uber/kraken/agent" in any of:
	/usr/local/go/src/github.com/uber/kraken/agent (from $GOROOT)
	/go/src/github.com/uber/kraken/agent (from $GOPATH)
failed to resize tty, using default size
make: *** [Makefile:40: agent/agent] Error 1

from kraken.

yiranwang52 avatar yiranwang52 commented on May 14, 2024

On one side, yes we need to improve documentaiton;
On the other side, can you explain which part failed with devcluster?

from kraken.

NikiChr avatar NikiChr commented on May 14, 2024

The host has the kraken.git and the adjusted .yaml files for linux.
cd kraken then make devcluster results in the following:

go get -u github.com/Masterminds/glide
/bin/glide i
/bin/bash: /bin/glide: No such file or directory
make: *** [Makefile:97: vendor] Error 127

I want to use kraken in a mininet/containernet network.
However since I am not experienced in setting up such networks I am in need of some kind of instruction for each kraken component.

from kraken.

yiranwang52 avatar yiranwang52 commented on May 14, 2024

glide is dependency management tool used by Go. You need to install that.

Separately I think it's better we provide some scripts to allow you to run the project without compiling it.

from kraken.

yiranwang52 avatar yiranwang52 commented on May 14, 2024

I think your go environment has problems...
The easiest solution here is we provide a script to run images directly, instead letting everyone compile the code.

from kraken.

NikiChr avatar NikiChr commented on May 14, 2024

I think your go environment has problems...

I think it might have to do with the Docker in Docker containers I use for simulations.

The easiest solution here is we provide a script to run images directly, instead letting everyone compile the code.

Is there already something that I can use or is it a WIP?

Apart from that I have made some progress and actually got it working by using a slightly different approach, as can be seen in the following dockerfile:

FROM docker:dind

RUN apk add --no-cache bash git musl-dev nano make go curl tar \
	&& apk update 
	
# configure go
ENV GOROOT /usr/lib/go
ENV GOPATH /go
ENV PATH /go/bin:$PATH
RUN mkdir -p ${GOPATH}/src ${GOPATH}/bin ${GOPATH}/src/github.com/uber

# install glide
RUN go get -u github.com/Masterminds/glide/...

# install kraken
WORKDIR $GOPATH/src/github.com/uber/
RUN git clone https://github.com/uber/kraken
WORKDIR $GOPATH/src/github.com/uber/kraken
RUN glide install
COPY content1/ /$GOPATH/src/github.com/uber/kraken
#COPY content2/ /$GOPATH/src/github.com/uber/kraken

# install missing packages
RUN go get github.com/andres-erbsen/clock github.com/c2h5oh/datasize github.com/cactus/go-statsd-client/statsd github.com/cenkalti/backoff github.com/docker/distribution/configuration github.com/docker/distribution/context github.com/docker/distribution/registry github.com/docker/distribution/registry/storage/driver github.com/docker/distribution/registry/storage/driver/factory github.com/docker/distribution/uuid github.com/jackpal/bencode-go github.com/pressly/chi github.com/spaolacci/murmur3 github.com/uber-go/tally/m3 github.com/uber-go/tally/statsd github.com/uber-go/tally github.com/willf/bitset go.uber.org/atomic go.uber.org/zap go.uber.org/zap/zapcore golang.org/x/time/rate gopkg.in/validator.v2 gopkg.in/yaml.v2 github.com/uber/kraken/agent github.com/googleapis/gax-go/v2 go.opencensus.io/plugin/ochttp go.opencensus.io/trace go.opencensus.io/trace/propagation github.com/aws/aws-sdk-go/aws   github.com/aws/aws-sdk-go/aws/awserr   github.com/aws/aws-sdk-go/aws/credentials   github.com/aws/aws-sdk-go/aws/session   github.com/aws/aws-sdk-go/service/s3   github.com/aws/aws-sdk-go/service/s3/s3iface   github.com/aws/aws-sdk-go/service/s3/s3manager   github.com/awslabs/amazon-ecr-credential-helper/ecr-login   github.com/awslabs/amazon-ecr-credential-helper/ecr-login/api   github.com/docker/docker-credential-helpers/client   github.com/docker/engine-api/types   github.com/go-chi/chi   github.com/jmoiron/sqlx   github.com/mattn/go-sqlite3   github.com/pressly/goose   github.com/satori/go.uuid   google.golang.org/api/iterator  github.com/garyburd/redigo/redis cloud.google.com/go/storage golang.org/x/oauth2 golang.org/x/oauth2/google
RUN export PACKAGE_VERSION=myversion
#RUN make devcluster
	
ENTRYPOINT ["dockerd-entrypoint.sh"]
CMD /bin/bash

I than have to manually execute make devcluster inside my dind container.
Otherwise when I try to execute it via the dockerfile it produces the following error:

the input device is not a TTY
make: *** [Makefile:40: agent/agent] Error 1

Again I can imagine that this is due to Docker in Docker.

When I follow the instruction on make devcluster I receive this error in step 2:

bash-5.0# docker pull localhost:16000/library/golang:1.11
Error response from daemon: error parsing HTTP 403 response body: invalid character '<' looking for beginning of value: "<html>\r\n<head><title>403 Forbidden</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>403 Forbidden</h1></center>\r\n<hr><center>nginx/1.10.3</center>\r\n</body>\r\n</html>\r\n"

from kraken.

yiranwang52 avatar yiranwang52 commented on May 14, 2024

Would "Kraken on k8s" setup work for you?

from kraken.

NikiChr avatar NikiChr commented on May 14, 2024

I think k8s is too much for my purpose.

For setting up kraken I use a very simple and small virtual network via containernet with 4 containers/hosts in a ring architecture:

  • r1:44.44.12.1
  • r2:44.44.12.2
  • r3:44.44.13.3
  • r4:44.44.24.4

My plan was to run a tracker container, origin container, proxy and build-index container on r1 and an agent container on r2, r3 and r4 just for testing by pulling and pushing some docker images in the network.
I was hoping I can setup kraken by just executing docker run for each container on each host and adjusting some config files.
Afterwards the results shall be used to setup kraken in a larger virtual network that also runs with containernet.

Now that I have the docker image for each component I should be able to setup up kraken in my small network by importing the images (into the hosts) and the kraken.git (into each host's $GOPATH), right?

Since I can not handle docker so well yet, I was hoping to find the necessary instructions in the documentation on:

1. what to download.
2. which files/configs to modify.
3. how to start the containers.
4. how to check if kraken works as intendet.

Maybe that describes my current situation better and sheds some clarity on my issue.
I am sorry if I did not express my issue sufficiently till now.

from kraken.

Related Issues (20)

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.