Giter Club home page Giter Club logo

docker-win-mac-docs's Introduction

What is CROPS (CROssPlatformS)?

CROPS is an open source, cross-platform development framework that leverages Docker containers to provide an easily managed, extensible environment which allows developers to build binaries for a variety of architectures of Windows, Linux and Mac OS X hosts.

CROPS components

  • CEED - runs on the development host and exposes an API to Integrated Development Environments (IDEs) or CLI callers
  • TURFF - runs in a container and services requests from CODI
  • CODI - COntainer DIspatcher runs in a container and keeps track of all available TURFF instances in its internal table. CODI also redirects CEED requests to the corresponding TURFF instance

USING CROPS FOR ZEPHYR OS DEVELOPMENT

Please refer to the GitHub Wiki

USING CROPS WITH YOUR OWN TOOLCHAIN

  1. Install Docker (Linux) or Docker Toolbox (Windows/Mac)

  2. Build CODI dependencies container

Execute the following command from within the dockerfiles directory:

docker build -t crops/codi:deps -f Dockerfile.codi.deps .
  1. Build CODI container

Execute the following command from within the dockerfiles directory:

docker build -t crops/codi:version -f Dockerfile.codi ../
  1. Build toolchain dependencies container

Execute the following command from within the dockerfiles directory:

docker build -t crops/toolchain:deps -f Dockerfile.toolchain.deps .
  1. Open the Dockerfile.toolchain file and provide the URL to your toolchain

Example:

ENV TOOLCHAIN_NAME poky-glibc-x86_64-core-image-sato-i586-toolchain-2.0.sh
ENV TOOLCHAIN_PATH http://downloads.yoctoproject.org/releases/yocto/yocto-2.0/toolchain/x86_64/
  1. Build your toolchain container
docker build -t crops/toolchain:my_toolchain -f Dockerfile.toolchain ../
  1. Start CODI container
docker run -d --name codi-test -v /var/run/docker.sock:/var/run/docker.sock --net=host crops/codi:version
  1. Start toolchain container
mkdir -p $HOME/crops-workspace && docker run -d --name crops-toolchain-my_toolchain -v $HOME/crops-workspace/:/crops/   --env TURFFID=crops-toolchain-my_toolchain --net=host crops/toolchain:my_toolchain
  1. Run the Zephyr installer and answer "Yes" when prompted to install CEED. Answer "No" to all other questions
curl -kOs https://raw.githubusercontent.com/crops/crops/master/installers/zephyr-installer.sh && source   ./zephyr-installer.sh
  1. Place your project in the shared workspace

Example:

$HOME/crops-workspace/my_project/
  1. Build your project

Example:

$HOME/.crops/ceed/ceed -d crops-toolchain-my_toolchain -g "make -C /crops/my_project/"
  1. Share your toolchain with other developers by pushing it to Docker Hub

Example:

$docker push crops/toolchain:my_toolchain"

CONTRIBUTING TO CROPS

COMPILE CEED, TURFF AND CODI ON LINUX

Required Prerequisites

  • libsqlite3-dev - "SQLite is a C library that implements an SQL database engine."
  • libcurl4-openssl-dev (7.40 or later) - "libcurl is an easy-to-use client-side URL transfer library, supporting DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP."
  • libjansson-dev - "Jansson is a C library for encoding, decoding and manipulating JSON data."
  1. Install Prerequisites On Debian / Ubuntu
apt-get install libsqlite3-dev libcurl4-openssl-dev libjansson-dev
  1. Compile
  • GCC
CC=gcc make all
  • CLANG
CC=clang make all
  1. Debug Compile
  • GCC
CC=gcc make debug
  • CLANG
CC=clang make debug

RUNNING A CLANG STATIC ANALYSYS

  1. Run the static analyzer
scan-build -V make
  1. Point your browser at the following URL to view the static analysis results
http://127.0.0.1:8181

docker-win-mac-docs's People

Contributors

rewitt1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-win-mac-docs's Issues

Qemu error

Hi
Im trying to run windows10 to my android phon by qemu system x86_64 headlees in termux
But i get this error:
qemu-system-x86_64: Slirp: Failed to send packet, ret: -1

Enyone can help me plz?
Screenshot_۲۰۲۱۰۸۰۳-۲۲۲۶۵۲_Termux

Originally posted by @hossein1100 in crops/poky-container#11 (comment)

Need instructions for Docker (not toolbox) and Windows 10

The Windows instructions are for using Docker Toolbox which is deprecated on Win 10. Although most of the instructions can be sussed out, there is one issue that isn't clear.

Following the directions as written, starting the Samba container results in a permission error accessing port 445. Directions on how to work past that issue for Win 10 would be greatly appreciated.

Error: failed to start containers: samba

I'm trying to create samba container on my windows10 host machine and running the command

`docker start samba`

it gives me an error:

(base) C:\>docker start samba
Error response from daemon: Ports are not available: listen tcp 0.0.0.0:445: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.
Error: failed to start containers: samba

can you please point me where should I look at to solve this?

Username and password prompt for Samba workdir

Following the steps in Windows Instructions (Docker Toolbox), I try to open the Samba workdir at \\192.168.99.100\workdir, which is the same ip address shown by docker-machine ip.

I get a Windows Security popup that says "Enter network credentials Enter your credentials to connect to: 192.168.99.100" It will not allow entering nothing, and all my guesses do not grant access (admin, user, smbuser / password). Following the instructions on this page, I have not set up a username or password for the docker / virtualbox environment.

Using Samba on Mac OSX (Sierra)

I found that I needed to enable SMB File Sharing before I could complete the setup steps on my Mac laptop. Was getting timeouts and TLS handshake errors.

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.