Armadilloフォーラム

[Armadillo-610] コンテナ起動時の処理の自動実行について

masa.yamaguchi

2024年11月18日 15時20分

==========
製品型番:Aramadillo-610
ABOSバージョン:3.20.3-at.3
カーネルバージョン: 5.10.226
その他:ATDE9を使用
==========

Armadillo-610 製品マニュアルは以下記載がございます。

<3.6.5. 音声出力を行う 図3.107 alsa-utils による音声出力を行う例>
[armadillo ~]# podman exec -it snd_example /bin/bash
[container ~]# apt update && apt upgrade
[container ~]# apt install alsa-utils ①
[container ~]# /etc/init.d/alsa-utils start ②
[container ~]# aplay -D hw:N,M [ファイル名] ③

コンテナ内のプロセスについて、上記②と③の実行をコンテナ起動時に自動的に実行したいと
考えておりますが、これをATDEのプロジェクトに存在するファイルに記載することで実現
することが可能かどうかご教示頂きたいです。
(DockerFileに記載すればよいのでしょうか。alsa-utilsプロセス自動起動については修正するファイルがあるのでしょうか)

コメント

佐藤です。
> 考えておりますが、これをATDEのプロジェクトに存在するファイルに記載することで実現
> することが可能かどうかご教示頂きたいです。
> (DockerFileに記載すればよいのでしょうか。alsa-utilsプロセス自動起動については修正するファイルがあるのでしょうか)
ATDEのプロジェクトとは、ATDE上のVS CodeでABOSDEを使って作成したプロジェクトということでしょうか。
であれば、可能かと思います。
まず、ABOSDEの[CREATE NEW PROJECT]から[Shell New Project]を選択してプロジェクトを作成してください。
次にプロジェクト内の "app/src/main.sh" の内容を以下のように書き換えてください。

#!/bin/bash -e
 
# For debug. If you need it, please comment in.
#set -x
 
/etc/init.d/alsa-utils start
aplay -D hw:N,M [ファイル名]

次に "container/packages.txt" に "alsa-utils" を追加してください。
次に "config/app.conf" に "add_devices /dev/snd" を追加してください。
この後、[Generate development swu]を実行して生成されたSWUイメージをインストールすると、
コンテナ起動時に目的のコマンドが起動されると思います。

佐藤様

masa.yamaguchiです。
ご回答ありがとうございます。
ご提示いただいた方法で検討したいと思います。