import (
"context"
- "os"
"time"
)
type pgBooter struct {}
func (pb *pgBooter) Boot(ctx context.Context) error {
- os.Setenv("LANG", "en_US.utf8")
// TODO: return nil if this isn't the database host.
if pb.check(ctx) == nil {
return nil
}
- if err := (&osPackage{
- Debian: "locales",
- }).Boot(ctx); err != nil {
- return err
- }
- if err := command("bash", "-c", "echo ${LANG} UTF-8 | tee -a /etc/locale.gen && locale-gen -a").Run(); err != nil {
- return err
- }
if err := (&osPackage{
Debian: "postgresql",
}).Boot(ctx); err != nil {
# preload (but don't install) packages arvados-boot might decide to install
RUN DEBIAN_FRONTEND=noninteractive apt-get -dy install --no-install-recommends ca-certificates locales nginx postgresql runit
-RUN DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends runit
+RUN DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends runit locales
+
+RUN ["bash", "-c", "echo en_US.utf8 UTF-8 | tee -a /etc/locale.gen && locale-gen -a && \
+ (echo LANG=en_US.UTF-8; echo LC_ALL=en_US.UTF-8) > /etc/default/locale"]
CMD ["bash", "-c", "coproc arvados-boot; runsvdir /etc/sv"]