6 điểm bởi GN⁺ 2024-11-24 | 1 bình luận | Chia sẻ qua WhatsApp
  • Bocker

    • Bocker là một phiên bản đơn giản của Docker được triển khai bằng khoảng 100 dòng bash.
  • Điều kiện tiên quyết

    • Các gói cần thiết để chạy Bocker:
      • btrfs-progs
      • curl
      • iproute2
      • iptables
      • libcgroup-tools
      • util-linux >= 2.25.2
      • coreutils >= 7.5
    • Yêu cầu cấu hình hệ thống:
      • mount hệ thống tệp btrfs tại /var/bocker
      • một network bridge tên là bridge0 và IP 10.0.0.1/24
      • bật IP forwarding tại /proc/sys/net/ipv4/ip_forward
      • tường lửa để định tuyến lưu lượng từ bridge0 tới giao diện vật lý
    • Có thể dùng Vagrantfile để thiết lập môi trường cần thiết.
    • Bocker chạy với quyền root và thay đổi network interface, bảng định tuyến, quy tắc tường lửa, vì vậy nên chạy trong máy ảo.
  • Ví dụ sử dụng

    • Ví dụ về cách dùng Bocker:
      • Có thể tải image CentOS 7 bằng lệnh bocker pull centos 7.
      • Có thể kiểm tra danh sách image bằng bocker images.
      • Có thể chạy lệnh trong container bằng bocker run img_42150 cat /etc/centos-release.
      • Có thể kiểm tra các container đang chạy bằng bocker ps.
      • Có thể xem log container bằng bocker logs ps_42045.
      • Có thể xóa container bằng bocker rm ps_42045.
      • Có thể cài gói bằng bocker run img_42150 yum install -y wget.
      • Có thể commit các thay đổi của container bằng bocker commit ps_42018 img_42150.
      • Có thể thiết lập giới hạn CPU và bộ nhớ.
  • Chức năng: Hiện đã triển khai

    • Các chức năng hiện đã được triển khai:
      • triển khai giới hạn của docker build
      • docker pull
      • docker images
      • docker ps
      • docker run
      • docker exec
      • docker logs
      • docker commit
      • docker rm / docker rmi
      • networking
      • hỗ trợ quota / CGroups
  • Chức năng: Chưa triển khai

    • Các chức năng chưa được triển khai:
      • data volume container
      • data volume
      • port forwarding
  • Giấy phép

    • Chương trình này là phần mềm tự do được phân phối theo GNU General Public License.
    • Không có bất kỳ bảo đảm nào về tính thương mại hoặc sự phù hợp cho một mục đích cụ thể.

1 bình luận

 
GN⁺ 2024-11-24
Ý kiến trên Hacker News
  • Tôi đã tạo một dự án tên là Bag bằng cách dùng proot. Đây không phải là một giải pháp thay thế Docker, không liên quan đến cgroups, và CLI cũng khác Docker. Tôi đã phát triển một giải pháp chuỗi proxy để vượt kiểm duyệt Internet và muốn chạy nó trên termux. Khi đó termux chưa có jdk/jre, và tôi có thể dùng jdk bằng cách tạo môi trường archlinux thông qua proot. Môi trường này phù hợp cho nhiều tác vụ khác nhau, và thông qua script bag.sh, tôi có thể tự động tạo môi trường và chạy lệnh. Script này có một roadmap đã 5 năm không được cập nhật

  • Tôi thích các script bash tối giản, và 10 năm trước trong một hackathon, tôi từng triển khai một bộ cân bằng tải nội bộ trong cụm chỉ với 40 dòng bash để quảng bá hạ tầng phân tán dùng Docker, Mesos, v.v. Tôi cũng đã phát triển một công cụ chuyển từ colo sang cloud, nhưng giờ đã bị thất lạc. Có thể tìm thấy các bộ sưu tập script hữu ích ở những nơi như Shell Fu

  • Tôi thích khi trong kho mã có những thông báo như "chưa được triển khai", "việc cần làm", "đang làm", và commit cuối cùng là từ vài năm trước. Điều đó mang lại cảm giác nhẹ nhõm rằng tôi không cần quay lại xem danh sách việc cần làm mà chính mình đã bỏ sót trong code

  • Tôi ngạc nhiên vì lazydocker không được nhắc đến như một lựa chọn thay thế tuyệt vời cho Docker Desktop. Đây là một terminal UI khá đầy đủ tính năng chạy qua ssh

  • BastilleBSD là một công cụ quản lý jails trên BSD, sử dụng nhiều cấu trúc có thể thấy trong Docker. Tôi thích nó hơn các phần mềm quản lý jail khác trên BSD vì có ít phụ thuộc hơn

  • Bỏ qua tính thực dụng, vẫn có rất nhiều điều để học từ cách triển khai này

  • Liên kết trang chủ GitHub đang bị lỗi, nên cần bỏ "www.";

  • Việc có thể tái triển khai Docker một cách đơn giản chính là vấn đề lớn nhất mà công ty Docker phải đối mặt. Giá trị thực sự của Docker không chỉ nằm ở Docker Hub mà còn ở trải nghiệm tích hợp mà Docker trên Windows và Mac mang lại. Trải nghiệm này vượt trội hơn nhiều so với việc tự cấu hình VirtualBox và Vagrant thủ công

  • Thắc mắc về việc Docker đã khởi đầu như thế nào

  • Thắc mắc vì sao Docker vẫn chưa được đưa vào kho lưu trữ ubuntu/debian. Đây hẳn sẽ là một nguồn lợi nhuận ròng dễ dàng