Giter Club home page Giter Club logo

ship's Introduction

Hey! Nice to see you.

Welcome to my page!
I'm Balman, DevOps Engineer based in Nepal.

Things I work with

Amazon AWS Kubernetes Linux ArgoCD Helm Grafana Prometheus Terraform Serverless Ansible Amazon EC2 Amazon EKS Amazon ECS Amazon API Gateway AWS Lambda Amazon DynamoDB Amazon CloudWatch Amazon RDS Nginx Vagrant Docker ElasticSearch github actions git Prettier MongoDB Postgres Golang Python Nodejs SonarQube

๐ŸŽ“ Certifications

ย 

ย 

Open source projects

๐ŸŽ Projects โญ Stars ๐Ÿ“š Forks ๐Ÿ›Ž Issues ๐Ÿ“ฌ Pull requests
Compose your CloudFormation stacks like docker compose Stars Forks Issues Pull Requests
Bare minimal shell based container runtime built for fun Stars Forks Issues Pull Requests
Dump the CloudFormation stacks dependency as a JSON file Stars Forks Issues Pull Requests
See Wifi Password From CLI Stars Forks Issues Pull Requests

Community Involvements

  • 34th DevOps Meetup Kathmandu
    Demistify containers in the fundamental sense by creating the simplest container by hand. The talk included series of commands and demonstrations showcasing the linux features: chroot, namespaces, cgroup, linux security modules. Slides.
  • 2nd AWS User Group Nepal Meetup
    Introduction to IAC concepts(CloudFormation centered), its limitations and best way to design it for microservices, parallelize the creation and destruction of the immutable infrastructures. Slides.
  • Open-Source Captable
    Providing DevOps support for developer experience.

My latest posts

Where to find me

Github Twitter LinkedIn Hashnode


This README file is inspired from this blog from Thomas Guibert

ship's People

Contributors

omegazyadav avatar rbalman avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

ship's Issues

Feature: Add/Discuss the capability to move the containerized process in the background

Currently, ship containers only run in the foreground, It would be nice to have them run in a daemon mode. When moving the container to the background its logs also needs to be persisted in designated path.

Current Scenario:
Screenshot 2024-05-03 at 1 46 14 PM

If you look at the script where container is run, it doesn't use anything like & or nohup to move process to the background. Due to the limited time, it is left as it is. And log streaming was also commented out because it was conflicting with the container prompt

cgexec -g 'cpu,memory,pids:ship-'${CONTAINER_ID} \
    unshare --pid --mount --net --ipc --time --cgroup --uts --fork \
    chroot ${CONTAINER_ROOT}/ /bin/sh -c "mount -t proc proc /proc && $CMD" #2>&1 | tee ${SHIP_LOGS}/${CONTAINER_ID}/${CONTAINER_ID}.log || true

This issue can be used to suggest/improve/discuss the existing setup.

Acceptance Criteria

  • Move container process in the background for non interactive mode.
  • Possibly need to introduce some sort of flag to specify daemon mode.
  • Moving container to background also need to pipe the container logs to /var/log/ship/${CONTAINER_ID}/${CONTAINER_ID}.log path.

Grep returns error when removing containers

Probelm

I got an error from grep command while removing the container with ship.

grep: warning: stray \ before white space

Also, for some of the command if root access is required then it didn't mention that.

Add: Automated Testing for each sub command for smoothing contribution

Currently, there no automated testing so, every time there is any change. Reviewer or Tester must:

  • clone the latest change
  • test each subcommand
  • publishes the results as screenshots for feedback or proof

This process is manual, error prone and time consuming so, it might lead to bad practices or laziness. So adding automated testing would help introduce efficiency.

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.