Comments (2)
builder pattern
Sounds good 👍
from youki.
This is what the preliminary api looks like:
// required values (must be specified in new...)
// - create
// - id
// - bundle
// - exec
// - id
//
// use with_... methods to specify
// optional values
// - console-socket
// - pid-file
//
// overwritable values
// - systemd (default true)
// - root_path (default /run/youki)
//
// overwritable values (for exec only?)
// - env
// - cwd
// - container command
//
// calculated in build()
// computed values
// - rootless
// - container_dir
// - spec
// - notify_socket
// - container
// create
let container = ContainerBuilder::new_init(id, bundle)?
.with_pid_file(pid_file) // optional
.with_console_socket(console_socket) //optional
.with_systemd(false) // overwrite default
.with_root_path(root_path) // overwrite default
.build()?;
// exec
let container = ContainerBuilder::new_tenant(id)
.with_pid_file(pid_file)
.with_console_socket(console_socket)
.with_cwd(cwd)
.with_env(env)
.with_container_command(vec!["sleep".to_owned(), "9001".to_owned()])
.build()?;
from youki.
Related Issues (20)
- Update nix to 0.28.0 HOT 5
- Getting away from libseccomp HOT 6
- default debug level HOT 1
- On some systems, mounting cgroup v1 by `setup_emulated_subsystem` may missing some subsystems HOT 9
- Creating container without network namespace leads to mount error HOT 3
- Wrong directory when using a tenant container and w/ a mount namespace HOT 2
- `runc` differences given the same `config.json` HOT 4
- Packaging youki for openSUSE: How to disable the tests that need dbus? HOT 8
- Unexpected `chdir` invoked on container `init` and `start` HOT 9
- add build_with_spec(spec) HOT 8
- Add CPU affinity to executed processes HOT 5
- Associated type defaults are not stable, broken since 0.3.2 HOT 2
- Move youki_version macro define in use before
- change `mount.rs` find_parent_mount from pub to private HOT 4
- Options to pass env vars from OCI Spec to WASI Context HOT 6
- Make our roadmap public HOT 3
- bug: unreliable behavior in stress tests `failed to delete container` HOT 11
- [RFC] Consider Alternate CI for running Podman tests HOT 6
- Support Landlock
- oci-validation-go is unstable in our CI HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from youki.