Commit 453f6c65 by chalermpong

add API

parent 92821338
FROM node:latest
WORKDIR /usr/src/app
COPY package.json app.js docker-compose.yml ./
RUN npm install
EXPOSE 3200
CMD ["node","app.js"]
\ No newline at end of file
This diff is collapsed. Click to expand it.
const Docker = require('dockerode');
// สร้าง instance ของ Dockerode
const docker = new Docker();
const volumeName = 'my_volume'; // ระบุชื่อของ volume ที่ต้องการลบ
docker.getVolume(volumeName).remove((err) => {
// เรียกใช้งาน Docker API เพื่อดึงข้อมูลสถิติของ container ทั้งหมด
docker.listContainers((err, containers) => {
if (err) {
console.error('Error removing volume:', err);
return;
console.error('Error:', err);
} else {
// วนลูปผ่าน container ทั้งหมด
containers.forEach((containerInfo) => {
const containerId = containerInfo.Id;
// ดึงข้อมูลสถิติของ container นั้น
docker.getContainer(containerId).stats((err, stream) => {
if (err) {
console.error('Error:', err);
} else {
stream.on('data', (chunk) => {
const stats = JSON.parse(chunk.toString('utf8'));
// แสดงข้อมูล CPU และ Memory
console.log('Container:', containerInfo.Names[0]);
console.log('CPU Usage:', stats.cpu_stats.cpu_usage.cpu_percent);
console.log('Memory Usage:', stats.memory_stats.usage);
});
stream.on('error', (err) => {
console.error('Stream error:', err);
});
}
});
});
}
console.log('Volume removed successfully');
});
......@@ -379,10 +379,10 @@ const filters = {
### วิธีใช้ Docker compose โดยใช้ dockerode
ติดตั้ง Dockerode-compose
ติดตั้ง Dockerode-compose ใช้คำสั่ง
```
ใช้คำสั่ง npm install dockerode-compose
npm install dockerode-compose
```
docker compose pull
......
......@@ -2,6 +2,7 @@
"dependencies": {
"dockerode": "^4.0.2",
"dockerode-compose": "^1.4.0",
"express": "^4.19.2",
"fs": "^0.0.1-security",
"js-yaml": "^4.1.0",
"tar-fs": "^3.0.5"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment